數(shù)據(jù)結(jié)構(gòu)(C語言描述)(李曄 )
定 價(jià):39 元
- 作者:李曄 主編
- 出版時(shí)間:2020/1/1
- ISBN:9787122346391
- 出 版 社:化學(xué)工業(yè)出版社
- 中圖法分類:TP311.12
- 頁碼:229
- 紙張:
- 版次:01
- 開本:16開
“數(shù)據(jù)結(jié)構(gòu)”是計(jì)算機(jī)科學(xué)及相關(guān)學(xué)科的一門核心專業(yè)基礎(chǔ)課,主要討論各種數(shù)據(jù)結(jié)構(gòu)在計(jì)算機(jī)中的存儲表示及算法實(shí)現(xiàn),是一門集技術(shù)性、理論性和實(shí)踐性于一體的課程。本書綜合了諸多院校的課程教學(xué)大綱以及教育部2018年考研大綱中《計(jì)算機(jī)學(xué)科專業(yè)基礎(chǔ)綜合考試大綱》進(jìn)行編寫,書中所有算法描述均采用標(biāo)準(zhǔn)C語言。教材內(nèi)容安排合理,難易程度適中,講解深入淺出。每部分內(nèi)容都配備有對應(yīng)的程序?qū)嵗拓S富的習(xí)題,可有效增強(qiáng)讀者對經(jīng)典算法的理解和運(yùn)用能力。全書共9章,內(nèi)容包括緒論、線性表、棧和隊(duì)列、串、數(shù)組和廣義表、樹和二叉樹、圖、查找、排序。
本書主要面向本科及大中專計(jì)算機(jī)及相關(guān)專業(yè)的在校學(xué)生和具有C語言程序設(shè)計(jì)基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)自學(xué)者,既可作為高校數(shù)據(jù)結(jié)構(gòu)課程的教材,又可供從事軟件設(shè)計(jì)和開發(fā)的技術(shù)人員參考。
李曄,西安理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,副教授,姓名:李曄 年齡: 43 職稱職務(wù): 副教授 ;博士
工作院校(系):西安理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院
講授課程:C語言、數(shù)據(jù)結(jié)構(gòu)、軟件工程等
主要研究項(xiàng)目及領(lǐng)域:計(jì)算機(jī)應(yīng)用技術(shù)
作者簡介:本科、碩士及博士所學(xué)專業(yè)均為計(jì)算機(jī)相
關(guān)專業(yè),有二十多年從事計(jì)算機(jī)課程一線教學(xué)的經(jīng)驗(yàn),
長期主講數(shù)據(jù)結(jié)構(gòu)課程。
第1章 緒論 1
1.1 什么是數(shù)據(jù)結(jié)構(gòu) 1
1.2 數(shù)據(jù)結(jié)構(gòu)的概念及有關(guān)術(shù)語 1
1.3 算法和算法分析 5
習(xí)題 7
第2章 線性表 9
2.1 線性表的定義 9
2.2 線性表的基本運(yùn)算 9
2.3 順序存儲結(jié)構(gòu)線性表 10
2.3.1 線性表的順序存儲結(jié)構(gòu) 10
2.3.2 順序存儲結(jié)構(gòu)線性表的基本運(yùn)算 11
2.3.3 順序存儲結(jié)構(gòu)線性表的應(yīng)用 15
2.4 鏈?zhǔn)酱鎯Y(jié)構(gòu)線性表 20
2.4.1 單鏈表 20
2.4.2 循環(huán)鏈表 28
2.4.3 雙向鏈表 29
2.4.4 靜態(tài)鏈表 30
2.4.5 鏈?zhǔn)酱鎯Y(jié)構(gòu)線性表的應(yīng)用 31
2.5 小結(jié) 38
習(xí)題 38
第3章 棧和隊(duì)列 42
3.1 棧 42
3.1.1 棧的定義及基本運(yùn)算 42
3.1.2 順序存儲結(jié)構(gòu)棧的基本運(yùn)算 42
3.1.3 鏈?zhǔn)酱鎯Y(jié)構(gòu)棧的基本運(yùn)算 45
3.1.4 棧的應(yīng)用實(shí)例 47
3.1.5 棧與遞歸 48
3.2 隊(duì)列 50
3.2.1 隊(duì)列的定義及基本運(yùn)算 50
3.2.2 順序存儲結(jié)構(gòu)隊(duì)列的基本運(yùn)算 50
3.2.3 鏈?zhǔn)酱鎯Y(jié)構(gòu)隊(duì)列的基本運(yùn)算 53
3.2.4 隊(duì)列的應(yīng)用 55
3.3 小結(jié) 57
習(xí)題 58
第4章 串 61
4.1 串的概念及基本運(yùn)算 61
4.1.1 串的基本概念 61
4.1.2 串的基本運(yùn)算 62
4.2 順序存儲結(jié)構(gòu)串的運(yùn)算 63
4.2.1 串的定長順序存儲結(jié)構(gòu) 63
4.2.2 定長順序存儲結(jié)構(gòu)串的基本運(yùn)算 64
4.3 串的堆分配存儲結(jié)構(gòu)及其運(yùn)算 66
4.3.1 串的堆分配存儲結(jié)構(gòu) 66
4.3.2 堆分配存儲結(jié)構(gòu)串的運(yùn)算 66
4.4 串的鏈?zhǔn)酱鎯Y(jié)構(gòu)及基本運(yùn)算 68
4.4.1 串的鏈?zhǔn)酱鎯Y(jié)構(gòu) 68
4.4.2 鏈串的基本運(yùn)算 69
4.5 串的模式匹配 70
4.5.1 簡單模式匹配算法——BF算法 70
4.5.2 無回溯的模式匹配算法——KMP算法 72
*4.5.3 next函數(shù)的改進(jìn) 77
4.6 小結(jié) 79
習(xí)題 79
第5章 數(shù)組和廣義表 81
5.1 數(shù)組 81
5.1.1 數(shù)組的定義及邏輯結(jié)構(gòu) 81
5.1.2 數(shù)組的存儲結(jié)構(gòu) 83
5.1.3 特殊矩陣的壓縮存儲 84
5.1.4 數(shù)組應(yīng)用舉例 88
5.2 廣義表 91
5.2.1 廣義表的定義 91
5.2.2 廣義表的存儲結(jié)構(gòu) 93
5.2.3 廣義表基本操作實(shí)現(xiàn) 94
5.2.4 廣義表應(yīng)用舉例 97
5.3 小結(jié) 98
習(xí)題 99
第6章 樹和二叉樹 102
6.1 樹的定義及有關(guān)術(shù)語 102
6.1.1 樹的定義 102
6.1.2 常用術(shù)語 102
6.2 二叉樹 103
6.2.1 二叉樹的定義 103
6.2.2 二叉樹的性質(zhì) 105
6.2.3 二叉樹的存儲結(jié)構(gòu) 105
6.2.4 二叉樹的遍歷 107
6.2.5 線索二叉樹 113
6.2.6 哈夫曼樹 117
6.3 樹和森林 122
6.3.1 樹的存儲結(jié)構(gòu) 122
6.3.2 樹或森林與二叉樹的轉(zhuǎn)換 124
6.3.3 樹和森林的遍歷 125
6.4 小結(jié) 126
習(xí)題 126
第7章 圖 130
7.1 圖的定義及有關(guān)術(shù)語 130
7.2 圖的存儲結(jié)構(gòu) 134
7.2.1 鄰接矩陣 134
7.2.2 鄰接表 137
7.2.3 十字鏈表 139
*7.2.4 鄰接多重表 141
7.3 圖的遍歷 143
7.3.1 深度優(yōu)先搜索 143
7.3.2 廣度優(yōu)先搜索 145
7.3.3 圖的連通性 148
7.4 最小生成樹 150
7.4.1 普里姆算法 150
7.4.2 克魯斯卡爾算法 153
7.5 有向無環(huán)圖及其應(yīng)用 156
7.5.1 拓?fù)渑判?156
7.5.2 關(guān)鍵路徑 161
7.6 最短路徑 166
7.6.1 單源最短路徑 166
7.6.2 每一對頂點(diǎn)之間的最短路徑 169
7.7 圖的應(yīng)用實(shí)例 172
7.8 小結(jié) 174
習(xí)題 175
第8章 查找 180
8.1 查找的有關(guān)概念 180
8.2 線性表的查找 181
8.2.1 順序查找 181
8.2.2 二分查找 182
8.2.3 分塊查找 184
8.3 樹表的查找 185
8.3.1 二叉排序樹 185
8.3.2 平衡二叉樹 190
8.3.3 B-樹 193
8.3.4 B+樹 196
8.4 哈希查找 197
8.4.1 哈希表的概念及哈希函數(shù)的構(gòu)造 197
8.4.2 哈希表的建立 199
8.4.3 沖突的處理方法 199
8.4.4 哈希查找的實(shí)現(xiàn) 201
8.5 小結(jié) 202
習(xí)題 203
第9章 排序 206
9.1 排序的有關(guān)概念 206
9.2 插入排序 207
9.2.1 直接插入排序 207
9.2.2 折半插入排序 208
9.2.3 希爾排序 209
9.3 交換排序 211
9.3.1 冒泡排序 211
9.3.2 快速排序 212
9.4 選擇排序 214
9.4.1 簡單選擇排序 214
9.4.2 堆排序 216
9.5 歸并排序 219
9.6 基數(shù)排序 221
9.7 多關(guān)鍵字排序 223
9.8 小結(jié) 224
習(xí)題 225
參考文獻(xiàn) 229