全書由11個章節(jié)和1個附錄組成,其中第0章給出所有項目的總體實訓規(guī)范,第1-10章描述各種數(shù)據(jù)結構的實訓項目,各章節(jié)大致由結構特點總結、項目實訓具體要求、核心代碼提示和實訓拓展四個部分組成,附錄提供了標準化代碼風格參考規(guī)范。本書包含所有實訓項目的完整參考代碼。本書內容豐富、實踐性強,可作為高等院校計算機及相關專業(yè)"數(shù)據(jù)結構”課程上機實訓教材,也可作為學生自學數(shù)據(jù)結構設計的輔助教材,也是軟件開發(fā)者的參考書。
戴文華,教授,湖北科技學院計算機科學與技術學院院長,主要研究方向為人工智能與自然語言處理、數(shù)據(jù)庫與數(shù)據(jù)倉庫、大數(shù)據(jù)分析與處理等。任湖北省高等教育學會計算機教育專業(yè)委員會副主任委員,中國電子學會教育工作委員會華中地區(qū)EDA技術研究會常務理事,咸寧市移動數(shù)字化專家委員會委員。湖北高校省級精品資源共享課程《數(shù)據(jù)結構》課程負責人。曾編寫《Visual C++程序設計基礎與項目實訓》《C語言程序設計》《基于遺傳算法的文本分類及聚類研究》《計算機基礎實用教程》《微機操作實用教程》等多部圖書。
目 錄
第0章 項目總體實訓規(guī)范 1
第1章 抽象數(shù)據(jù)類型項目實訓 4
第2章 線性表項目實訓 7
2.1 順序表 8
2.2 單鏈表 13
2.3 循環(huán)鏈表 18
2.4 雙向循環(huán)鏈表 20
2.5 靜態(tài)鏈表 22
2.6 線性表應用項目(多項式運算) 26
2.7 線性表項目實訓拓展 31
第3章 棧和隊列項目實訓 32
3.1 棧 32
3.1.1 順序棧 32
3.1.2 鏈棧 37
3.2 隊列 42
3.2.1 順序隊列 42
3.2.2 鏈隊列 46
3.2.3 循環(huán)隊列 50
3.3 棧和隊列應用項目 54
3.4 棧和隊列項目實訓拓展 72
第4章 串項目實訓 73
4.1 串的定長存儲 74
4.2 串的堆分配存儲 80
4.3 串的塊鏈存儲 83
4.4 串項目實訓拓展 94
第5章 數(shù)組和廣義表項目實訓 96
5.1 數(shù)組的順序存儲 96
5.2 三元組稀疏矩陣 99
5.3 行邏輯鏈接稀疏矩陣 104
5.4 廣義表頭尾鏈式存儲 110
5.5 數(shù)組與廣義表項目實訓拓展 116
第6章 樹和二叉樹項目實訓 117
6.1 樹 117
6.1.1 樹的雙親表示法 118
6.1.2 樹的孩子兄弟表示法 127
6.2 二叉樹項目實訓 138
6.2.1 二叉樹的順序存儲 139
6.2.2 二叉樹的鏈式存儲 147
6.2.3 線索二叉樹 156
6.3 樹和二叉樹應用項目 161
6.4 樹和二叉樹項目實訓拓展 167
第7章 圖結構項目實訓 168
7.1 圖的鄰接矩陣表示 169
7.2 圖的鄰接表表示 183
7.3 圖的十字鏈表表示 193
7.4 圖的鄰接多重表表示 202
7.5 圖的高級算法項目 214
7.6 圖項目實訓拓展 228
第8章 動態(tài)存儲管理項目實訓 230
8.1 邊界標識法 231
8.2 伙伴系統(tǒng) 235
8.3 動態(tài)內存管理項目實訓拓展 239
第9章 查找表項目實訓 240
9.1 靜態(tài)查找表 241
9.1.1 順序查找表 241
9.1.2 有序查找表 243
9.1.3 靜態(tài)查找樹表 246
9.2 動態(tài)查找表 250
9.2.1 二叉排序樹 250
9.2.2 平衡二叉樹 255
9.2.3 B-樹 260
9.2.4 雙鏈鍵樹 265
9.2.5 Trie樹 270
9.3 哈希表 274
9.4 查找項目實訓拓展 279
第10章 排序項目實訓 280
10.1 常見排序算法 280
10.2 鏈式基數(shù)排序 286
10.3 排序項目實訓拓展 289
附錄 標準化代碼規(guī)范參考 291