數據結構

中國鐵道出版社出版圖書

《數據結構》是2011年03月01日中國鐵道出版社出版的圖書,作者是嚴蔚敏 / 吳偉民。本書從抽象數據類型的角度討論各種常用的數據結構及其應用,還討論查找和排序的各種實現方法及其綜合分析比較。

圖書簡介


本書結構清晰、語言精練、注重應用,強調系統性和實用性的結合,適合作為高等學校計算機及相關專業的本科教材或參考書,也可作為計算機愛好者的自學參考書。

基本信息


數據結構
數據結構
出版日期:2011年8月
頁碼:184頁
策劃編輯:嚴曉舟
適用專業:計算機專業
課程分類:數據結構與演演算法
出版單位:中國鐵道出版社

內容簡介


本書內容包括線性表、棧、隊列、數組、樹和二叉樹、圖等,闡述各種數據結構的邏輯結構,討論它們在計算機中的存儲表示,以及在不同存儲結構下運算演演算法的實現,並對演演算法的效率進行了簡要分析。全書採用C語言作為數據結構和演演算法的描述工具。為了幫助讀者進一步深入理解教材內容,鞏固概念,各章配有難易適當的習題,以適應不同程度讀者練習的需要。

圖書目錄


第1章 緒論 1
1.1 數據結構的概念 1
1.1.1 基本概念和術語 1
1.1.2 邏輯結構 2
1.1.3 存儲結構 4
1.1.4 抽象數據類型 5
1.2 演演算法 7
1.2.1 演演算法的描述 7
1.2.2 演演算法設計的要求 7
1.2.3 演演算法分析 7
第2章 線性表 12
2.1 線性表的抽象數據類型 12
2.2 線性表的順序存儲結構 14
2.2.1 順序表的類型定義 15
2.2.2 線性表基本運算在順序表上的實現 15
2.2.3 順序實現的演演算法分析 17
2.2.4 順序表的應用舉例 17
2.3 線性表的鏈式存儲結構 19
2.3.1 單鏈表 19
2.3.2 單循環鏈表 26
2.3.3 雙向鏈表 27
第3章 棧 31
3.1 棧的抽象數據類型 31
3.2 棧的順序存儲結構 33
3.2.1 順序棧的類型定義 33
3.2.2 棧基本運算在順序棧上的實現 34
3.2.3 順序棧的應用舉例 35
3.3 棧的鏈式存儲結構 36
3.3.1 鏈棧的類型定義 37
3.3.2 棧基本運算在鏈棧上的實現 37
3.3.3 鏈棧的應用舉例 38
3.4 棧與遞歸的實現 39
第4章 隊列 42
4.1 隊列的抽象數據類型 42
4.2 隊列的順序存儲結構 44
4.2.1 循環隊列的類型定義 45
4.2.2 隊列基本運算在循環隊列上的實現 45
4.2.3 循環隊列的應用舉例 46
4.3 隊列的鏈式存儲結構 47
4.3.1 鏈隊列的類型定義 47
4.3.2 隊列基本運算在鏈隊列上的實現 48
4.3.3 鏈隊列的應用舉例 49
第5章 數組和稀疏矩陣 52
5.1 數組的概念與表示 52
5.1.1 數組的概念 52
5.1.2 數組的順序表示 54
5.1.3 特殊矩陣的壓縮存儲 56
5.2 稀疏矩陣 57
5.2.1 稀疏矩陣的三元組表示 58
5.2.2 稀疏矩陣的十字鏈表表示 65
第6章 樹和二叉樹 69
6.1 樹 69
6.1.1 樹的定義和表示 69
6.1.2 樹的基本術語和操作 71
6.1.3 樹的存儲結構 73
6.2 二叉樹 76
6.2.1 二叉樹的定義 76
6.2.2 二叉樹的性質 79
6.2.3 二叉樹的存儲結構 81
6.3 二叉樹的遍歷 83
6.3.1 常用的二叉樹遍歷演演算法 83
6.3.2 遍歷演演算法的應用 90
6.4 樹和森林 92
6.4.1 森林轉換為二叉樹 92
6.4.2 二叉樹轉換為森林 93
6.4.3 樹的遍歷 94
6.4.4 森林的遍歷 95
6.5 哈夫曼樹及其應用 96
6.5.1 哈夫曼樹 96
6.5.2 哈夫曼演演算法 97
6.5.3 哈夫曼編碼 99
第7章 圖 104
7.1 圖的基本概念 104
7.1.1 圖的抽象數據類型的定義 104
7.1.2 圖的基本術語 106
7.2 圖的存儲結構 108
7.2.1 鄰接矩陣 108
7.2.2 鄰接表 110
7.3 圖的遍歷 112
7.3.1 深度優先搜索 112
7.3.2 廣度優先搜索 114
7.4 最小生成樹 115
7.4.1 普里姆演演算法 116
7.4.2 克魯斯卡爾演演算法 119
7.5 拓撲排序 121
7.6 關鍵路徑 124
7.7 最短路徑 129
7.7.1 單源點最短路徑 129
7.7.2 每對頂點之間的最短路徑 131
第8章 查找 135
8.1 查找表 135
8.2 靜態查找表 136
8.2.1 順序查找 136
8.2.2 折半查找 137
8.2.3 分塊查找 138
8.3 動態查找表 139
8.3.1 二叉排序樹 139
8.3.2 平衡二叉樹 143
8.4 哈希表 146
8.4.1 哈希函數的構造方法 146
8.4.2 哈希衝突的解決方法 147
第9章 排序 152
9.1 排序的基本概念 152
9.2 插入排序 153
9.2.1 直接插入排序 153
9.2.2 希爾排序 154
9.3 交換排序 156
9.3.1 冒泡排序 156
9.3.2 快速排序 157
9.4 選擇排序 159
9.4.1 直接選擇排序 159
9.4.2 堆排序 159
9.5 歸併排序 161
9.6 基數排序 162
附錄A 實驗安排 167
附錄B 中英名詞對照表 169
參考文獻