「極簡數據結構」課程

「極簡數據結構」將經過簡單明瞭的視頻講解,讓學習者在最短期內學會正確使用數據結構而不糾纏過多細節,迅速進入實戰體驗,併爲後續深刻學習「算法三部曲」(《算法導論》《算法設計指南》《算法》)打下良好的基礎。算法

舊版視頻已經所有更新完,共有500多人學習,新版已轉到網易雲課堂從新錄製並連載。視頻都會像軟件那樣快速迭代,不斷完善更新,而且提供完整的版本,未來會出紙質書版本。數組

課程連接:(study.163.com/course/intr…)數據結構

每講視頻基本都在20分鐘之內,短小精悍,但願以不那麼硬核的內容也能讓你們體會到算法和數據結構之美。共80講視頻,舊版目錄(新版本內容更多~):性能

  • 第1章:語言基礎
  1. C++輸入輸出
  2. string的簡單使用
  3. 數組和向量
  4. 對角線問題
  5. 數組和向量的排序
  6. 二分查找原理
  7. 數組二分查找
  8. 向量二分查找
  9. 3n + 1問題
  • 第2章:抽象之妙
  1. 抽象數據類型
  2. 查找問題的抽象數據類型視角
  3. 初識集合
  4. 次序統計量
  5. 有序向量與無序向量
  6. 以集合描述算法
  7. STL容器一覽
  • 第3章:性能分析
  1. 時空之謎
  2. 程序運行時間
  3. 量級
  4. 常見運行時間
  5. 運行時間的差別
  6. 抽象數據類型的性能
  7. 抽象數據類型選用
  • 第4章:向量與鏈表
  1. 向量用法
  2. 容量之妙
  3. 天然數映射與下標
  4. 初識鏈表
  5. 鏈表操做
  6. 結點連接
  7. 單鏈實例
  8. 就地逆置
  9. 連續放入
  • 第5章:棧與隊列
  1. 棧與隊列
  2. 進制轉換
  3. 循環隊列
  4. 基數排序
  5. 電話號碼排序
  6. 括號匹配
  7. 迷宮問題
  8. DFS求解迷宮
  9. BFS求解迷宮
  • 第6章:樹/集合
  1. 二叉樹
  2. 樹的存儲
  3. 二叉樹遍歷
  4. 二叉樹遞歸構造
  5. 二叉查找樹
  6. 遍歷結果重構二叉樹
  7. 集合性能分析
  8. 迭代器遍歷時間
  9. 不相交集
  • 第7章:散列/字典
  1. 初識字典
  2. 字典用法
  3. 位向量與bool向量
  4. 結鏈法
  5. 探查序列
  6. 開放式定址法
  7. 字典性能調優
  8. 自定義散列
  • 第8章:鍵值映射
  1. 映射用法
  2. 雙向映射
  3. 計數排序
  4. 轉置
  5. 桶排序
  6. 直方圖排序
  7. trie
  • 第9章:堆/優先級隊列
  1. 響應優先
  2. 上浮操做
  3. 下沉操做
  4. 堆排序
  5. 建堆算法
  6. 離散事件仿真
  7. Huffman編碼
  8. 多路歸併
  • 第10章:排序
  1. 插入排序
  2. 兩路歸併
  3. 歸併排序
  4. 排序下界
  5. 劃分
  6. 快速排序
  7. 次序統計量

「極簡數據結構」秉承現代數據結構教學理念,咱們着眼於以抽象數據類型爲綱,快速提高學習者的動手能力。爲此,咱們藉助C++豐富而強悍的標準模板庫STL,輔以簡短的可執行代碼展現常見數據結構的極致算法性能。爲減輕學習負擔,咱們採用接近於Python的現代C++語法,使用一個最小化的C++語言子集,並從輸入輸出開始講述,確保具有C語言知識的學習者可以無縫過渡,以最低基礎入門。學習

咱們以最傳統但學習效果最好的書寫形式講解,可是配備了最潮的數字化設備:編碼

  • iPad Pro 12.9」
  • Apple Pencil
  • Notability
  • iRig Mic HD

全手寫同步錄製從而打造出徹底不一樣的視聽效果。 本系列課程適合採用Cornell筆記法:設計

Cornell筆記體系學算法
相關文章
相關標籤/搜索