學習地址html
詳細學習內容git
Github記錄地址 歡迎fork和star,有驚喜值得學習!github
參考學習筆記算法
參考AC代碼數組
數據結構和算法學習筆記數據結構
第一講 基本概念 [陳越]數據結構和算法
1.1 什麼是數據結構函數
1.2 什麼是算法性能
1.3 應用實例:最大子列和問題:01-複雜度1 最大子列和問題(劍指offer和PAT)學習
第二講 線性結構 [何欽銘]
2.1 線性表及其實現:線性表的順序存儲和鏈式存儲實現
2.2 堆棧:線性結構-棧的順序存儲和鏈式存儲實現
2.3 隊列:隊列的順序存儲和鏈式存儲實現 + 循環隊列實現
2.4 應用實例:多項式加法運算:02-線性結構1 兩個有序鏈表序列的合併
第三講 樹(上) [何欽銘]
3.1 樹與樹的表示
3.2 二叉樹及存儲結構
3.3 二叉樹的遍歷 二叉樹的遍歷--遞歸+非遞歸
小白專場:樹的同構 - C語言實現:03-樹1 樹的同構
第四講 樹(中)[何欽銘]
4.1 二叉搜索樹: C/C++二叉樹搜索樹操做集
4.2 平衡二叉樹: 04-樹5 Root of AVL Tree + AVL樹操做集
小白專場:是否同一棵二叉搜索樹- C語言實現:04-樹4 是否同一棵二叉搜索樹
線性結構之習題選講[陳越]:Reversing Linked List
第五講 樹(下)[何欽銘]
5.1 堆:堆的操做集
5.2 哈夫曼樹與哈夫曼編碼:05-樹9 Huffman Codes及基本操做
5.3 集合及運算:並查集
小白專場:堆中的路徑 - C語言實現:05-樹7 堆中的路徑
小白專場[陳越]:File Transfer - C語言實現
第六講 圖(上)[陳越]
6.1 什麼是圖:圖的鄰接矩陣表示
6.2 圖的遍歷: 圖的鄰接表表示
6.3 應用實例:拯救007:06-圖2 Saving James Bond - Easy Version
6.4 應用實例:六度空間:06-圖3 六度空間
小白專場:如何創建圖- C語言實現:06-圖1 列出連通集
第七講 圖(中)[陳越]
樹之習題選講-Tree Traversals Again:03-樹3 Tree Traversals Again
樹之習題選講-Complete Binary Search Tree
樹之習題選講- Huffman Codes: 05-樹9 Huffman Codes及基本操做
7.1 最短路徑問題:最短路徑算法表示
小白專場:哈利·波特的考試- C語言實現:07-圖4 哈利·波特的考試(最短路徑)
第八講 圖(下)[陳越]
8.1 最小生成樹問題: 最小生成樹 Prim Kruskal
8.2 拓撲排序: 拓撲排序
圖之習題選講-旅遊規劃:07-圖6 旅遊規劃
第九講 排序(上)[陳越]
9.1 簡單排序(冒泡、插入)
9.2 希爾排序
9.3 堆排序
9.4 歸併排序
第十講 排序(下)[陳越]
10.1 快速排序
10.2 表排序
10.3 基數排序
10.4 排序算法的比較
第十一講 散列查找 [何欽銘]
11.1 散列表:散列查找(哈希表)
11.2 散列函數的構造方法
11.3 衝突處理方法
11.4 散列表的性能分析
11.5 應用實例:詞頻統計
小白專場:電話聊天狂人- C語言實現
第十二講 綜合習題選講 [陳越]
習題選講-Insert or Merge : 09-排序2 Insert or Merge
習題選講-Sort with Swap(0,*)
習題選講-Hashing - Hard Version