序
前言
歷年真題分值、考點統(tǒng)計表 1
歷年真題考點索引表 3
第1章 緒論 1
本章概略 1
1.1 針對考研數據結構的代碼書寫規(guī)范以及C&C++語言基礎 1
1.1.1 考研綜合應用題中算法設計部分的代碼書寫規(guī)范 1
1.1.2 考研中的C&C++語言基礎雜談 4
1.2 算法的時間復雜度與空間復雜度分析基礎 12
1.2.1 考研中的算法時間復雜度雜談 12
1.2.2 例題選講 13
1.2.3 考研中的算法空間復雜度分析 14
1.3 數據結構和算法的基本概念 15
1.3.1 數據結構的基本概念 15
1.3.2 算法的基本概念 16
習題 17
習題答案 19
第2章 線性表 22
大綱要求 22
考點與要點分析 22
核心考點 22
基礎要點 22
本章知識體系框架圖 22
知識點講解 23
2.1 線性表的基本概念與實現 23
2.2 線性表的基本操作 27
2.2.1 線性表的定義 27
2.2.2 線性表的結構定義 28
2.2.3 順序表的算法操作 28
2.2.4 單鏈表的算法操作 32
2.2.5 雙鏈表的算法操作 37
2.2.6 循環(huán)鏈表的算法操作 39
▲真題仿造 39
真題仿造答案與講解 39
習題+歷年真題 41
習題答案+歷年真題答案 46
第3章 棧、隊列和數組 59
大綱要求 59
考點與要點分析 59
核心考點 59
基礎要點 59
本章知識體系框架圖 59
知識點講解 60
3.1 棧和隊列的基本概念 60
3.1.1 棧的基本概念 60
3.1.2 隊列的基本概念 60
3.2 棧和隊列的存儲結構、算法與應用 60
3.2.1 本章所涉及的數據結構定義 61
3.2.2 順序棧的基本算法操作 62
3.2.3 鏈棧的基本算法操作 64
3.2.4 棧的應用 65
3.2.5 順序隊的算法操作 69
3.2.6 鏈隊的算法操作 71
3.3 特殊矩陣的壓縮存儲 73
▲真題仿造 76
真題仿造答案與講解 77
習題+真題 80
習題答案+歷年真題答案 85
第4章 樹與二叉樹 98
大綱要求 98
考點與要點分析 98
核心考點 98
基礎要點 98
本章知識體系框架圖 98
知識點講解 99
4.1 樹的基本概念 99
4.1.1 樹的定義 99
4.1.2 樹的基本術語 99
4.1.3 樹的存儲結構 100
4.2 二叉樹 100
4.2.1 二叉樹的定義 100
4.2.2 二叉樹的主要性質 101
4.2.3 二叉樹的存儲結構 103
4.2.4 二叉樹的遍歷算法 104
4.2.5 線索二叉樹的基本概念和構造 113
4.3 樹和森林 116
4.3.1 孩子兄弟存儲結構 116
4.3.2 森林與二叉樹的轉換 117
4.3.3 樹和森林的遍歷 117
4.4 樹與二叉樹的應用 118
4.4.1 二叉排序樹與平衡二叉樹 118
4.4.2 哈弗曼樹和哈弗曼編碼 118
▲真題仿造 121
真題仿造答案與解析 121
習題+歷年真題 123
習題答案+歷年真題答案 129
第5章 圖 146
大綱要求 146
考點與要點分析 146
核心考點 146
基礎要點 146
本章知識體系框架圖 146
知識點講解 147
5.1 圖的基本概念 147
5.2 圖的存儲結構 148
5.2.1 鄰接矩陣 148
5.2.2 鄰接表 150
5.3 圖的遍歷算法操作 151
5.3.1 深度優(yōu)先搜索遍歷 151
5.3.2 廣度優(yōu)先搜索遍歷 152
5.3.3 例題選講 154
5.4 最?。ù鷥r)生成樹 156
5.4.1 普里姆算法和克魯斯卡爾算法 156
5.4.2 例題選講 161
5.5 最短路徑 162
5.5.1 迪杰斯特拉算法 162
5.5.2 弗洛伊德算法 168
5.6 拓撲排序 171
5.6.1 AOV網 171
5.6.2 拓撲排序 171
5.6.3 例題選講 173
5.7 關鍵路徑 174
5.7.1 AOE網 174
5.7.2 關鍵路徑 174
▲真題仿造 178
真題仿造答案解析 178
習題+歷年真題 180
習題答案+歷年真題答案 186
第6章 排 序 200
大綱要求 200
考點與要點分析 200
核心考點 200
基礎要點 200
本章知識體系框架圖 200
知識點講解 201
6.1 排序的基本概念 201
6.1.1 排序 201
6.1.2 穩(wěn)定性 201
6.1.3 排序算法的分類 202
6.2 插入類排序 202
6.2.1 直接插入排序 202
6.2.2 折半插入排序 204
6.2.3 希爾排序 205
6.3 交換類排序 206
6.3.1 起泡排序 206
6.3.2 快速排序 208
6.4 選擇類排序 210
6.4.1 簡單選擇排序 210
6.4.2 堆排序 211
6.5 二路歸并排序 214
6.6 基數排序 215
6.7 外部排序 219
6.7.1 基本概念 219
6.7.2 歸并排序法 219
6.7.3 敗者樹 222
▲真題仿造 224
真題仿造答案與解析 224
習題+歷年真題 225
習題答案+真題答案 231
第7章 查 找 241
大綱要求 241
考點與要點分析 241
核心考點 241
基礎要點 241
本章知識體系框架圖 241
知識點講解 242
7.1 查找的基本概念、順序查找法、折半查找法 242
7.1.1 查找的基本概念 242
7.1.2 順序查找法 243
7.1.3 折半查找法 244
7.2 二叉排序樹、平衡二叉樹 246
7.2.1 二叉排序樹 246
7.2.2 平衡二叉樹 249
7.3 B-樹及其基本操作、B+樹的基本概念 252
7.3.1 B-樹的基本概念 252
7.3.2 B-樹的基本操作 254
7.3.3 B+樹的基本概念 258
7.4 散列表 259
7.4.1 散列表的概念 259
7.4.2 散列表的建立方法以及沖突解決方法 259
7.4.3 散列表的性能分析 263
▲真題仿造 265
真題仿造答案與解析 265
習題+歷年真題 266
習題答案+歷年真題答案 271
※特別章考研中某些算法的分治法解釋 285
參考文獻 289