數據結構 (C語言版), 4/e
內容描述
“數據結構”是電腦及相關專業的核心課程,是電腦程序設計的基礎,也是程序員考試和許多高校研究生入學考試的必考科目。 本書共9章,主要介紹數據結構和算法的基本概念,分別討論線性表、棧、隊列、串、數組、廣義表、樹、二叉樹、圖等常用的數據結構,以及基本的查找和排序算法。全書使用C語言函數描述算法,並在Visual C++ 6.0/2010環境下調試通過。 本書結構合理,內容緊湊,知識連貫,表述簡潔,邏輯性強,可作為電腦及其相關專業的教材,也可作為自學或各種電腦培訓班的教材。
目錄大綱
目錄
第1章概述1
1.1數據結構的發展1
1.2數據結構的基本概念2
1.3算法與算法分析5
習題1 10
第2章線性表13
2.1線性表的定義和基本操作13
2.1.1線性表的定義13
2.1.2線性表的基本操作14
2.2順序表15
2.2.1順序表的定義15
2.2.2順序表基本操作的實現16
2.3鏈表19
2.3.1單鏈表表示及實現20
2.3.2雙鏈表表示及實現28
2.3.3循環鏈表表示及實現32
2.3.4靜態鏈表表示及實現40
習題245
第3章特殊線性表49
3.1棧49
3.1.1棧的定義和基本操作49
3.1.2順序棧表示及實現50
3.1.3鏈棧表示及實現55
3.2隊列58
3.2.1隊列的定義和基本操作58
3.2.2順序隊列表示及實現59
3.2.3鏈隊列表示及實現64
3.3串66
3.3.1串的定義和基本操作66
3.3.2順序串表示及實現68
3.3.3鏈串表示及實現73
3.3.4串的模式匹配79
習題385
第4章數組和廣義表89
4.1數組89
4.1.1數組的定義和基本操作89
4.1.2數組的存儲結構90
4.1.3矩陣的壓縮存儲91
4.2廣義表105
4.2.1廣義表的定義和基本操作105
4.2.2廣義表的存儲機構106
習題4 112
第5章樹和二叉樹115
5.1樹的定義和基本操作115
5.1.1樹的定義和基本術語115
5.1.2樹的基本操作116
5.2二叉樹117
5.2.1二叉樹的定義和基本操作117
5.2.2二叉樹的性質118
5.2.3二叉樹的遍歷121
5.2.4二叉樹的順序存儲結構122
5.2.5二叉樹的鏈式存儲結構127
5.2.6二叉樹的非遞歸遍歷133
5.2.7線索二叉樹135
5.3樹和森林140
5.3.1樹的存儲結構140
5.3.2樹、森林與二叉樹之間的轉換144
5.3.3樹和森林的遍歷146
5.4赫夫曼樹及其應用147
5.4.1赫夫曼樹147
5.4.2赫夫曼編碼150
習題5153
第6章圖157
6.1圖的定義和基本操作157
6.1.1圖的定義和基本術語157
6.1.2圖的基本操作160
6.2圖的遍歷160
6.2.1深度優先搜索及其生成樹161
6.2.2廣度優先搜索及其生成樹161
6.3圖的存儲162
6.3.1鄰接矩陣162
6.3.2鄰接表與逆鄰接表165
6.3.3十字鏈表169
6.3.4鄰接多重表170
6.4最小生成樹171
6.4.1Kruskal算法172
6.4.2Prim算法173
6.5圖的應用175
6.5.1拓撲排序175
6.5.2關鍵路徑177
6.5.3最短路徑180
習題6182
第7章查找185
7.1查找的基本概念185
7.2靜態查找表186
7.2.1順序查找187
7.2.2二分查找189
7.2.3分塊查找192
7.3動態查找表194
7.3.1二叉排序樹194
7.3.2平衡二叉樹201
7.3.3B樹與B+樹207
7.4散列表209
7.4.1散列表的定義209
7.4.2散列函數的構造方法210
7.4.3處理沖突的方法212
7.4.4散列表的查找與性能分析218
習題7219
第8章內部排序223
8.1排序的基本概念223
8.2插入排序226
8.2.1直接插入排序226
8.2.2折半插入排序227
8.2.32路插入排序228
8.2.4希爾排序230
8.2.5表插入排序232
8.3交換排序235
8.3.1起泡排序235
8.3.2快速排序237
8.4選擇排序238
8.4.1簡單選擇排序238
8.4.2樹形選擇排序240
8.4.3堆排序243
8.5歸並排序246
8.6計數排序249
8.7基數排序250
8.7.1多關鍵字排序250
8.7.2鏈式基數排序251
8.8各種排序方法的綜合比較253
習題8254
第9章外部排序257
9.1外存儲器簡介257
9.2外部排序方法258
9.3多路平衡歸並260
9.4置換選擇排序261
9.5最佳歸並樹263
習題9 265
參考文獻266
作者介紹
秦玉平,博士,教授,遼寧省教學名師,遼寧省“興遼英才計劃”教學名師,發表學術和教學論文100餘篇,主持省部級以上科研和教改項目11項,出版教材6部,教學參考書2部。