注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計C/C++及其相關(guān)圖解數(shù)據(jù)結(jié)構(gòu)(使用C 視頻教學(xué)版)

圖解數(shù)據(jù)結(jié)構(gòu)(使用C 視頻教學(xué)版)

圖解數(shù)據(jù)結(jié)構(gòu)(使用C 視頻教學(xué)版)

定 價:¥89.00

作 者: 胡昭民
出版社: 清華大學(xué)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787302618454 出版時間: 2022-11-01 包裝: 平裝-膠訂
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡介

  本書以圖解的方式講述數(shù)據(jù)結(jié)構(gòu)及其算法,力求簡潔明了地闡述復(fù)雜的算法理論,以C作為描述語言解析算法的執(zhí)行過程,以大量的范例程序來展示數(shù)據(jù)結(jié)構(gòu)的使用及其相關(guān)算法的具體實現(xiàn)。 數(shù)據(jù)結(jié)構(gòu)是計算機(jī)專業(yè)的核心課程之一,也是編程愛好者程序設(shè)計的重要基礎(chǔ)。本書內(nèi)容包含這門必修課的完整知識體系:數(shù)組、鏈表、堆棧、隊列、樹、圖等數(shù)據(jù)結(jié)構(gòu),以及基于這些數(shù)據(jù)結(jié)構(gòu)的各類算法等。為了教學(xué)的需要,每章都提供了豐富的課后習(xí)題及詳細(xì)的參考答案。 本書圖文并茂,文字簡潔、清晰,范例豐富、可操作性強(qiáng),并配有視頻教學(xué)、PPT課件和范例程序源碼,適合學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法的讀者作為自學(xué)參考書,也適合作為高等院校計算機(jī)及信息相關(guān)專業(yè)的教材。

作者簡介

  胡昭民,現(xiàn)任榮欽科技股份有限公司執(zhí)行長,美國Rochester Institute of Technology計算機(jī)科學(xué)研究所畢業(yè),長期從事信息教育及計算機(jī)圖書寫作的工作,計算機(jī)圖書著作包括計算器概論、數(shù)據(jù)結(jié)構(gòu)、辦公室電子數(shù)據(jù)處理、互聯(lián)網(wǎng)等相關(guān)題材,并監(jiān)制過多套游戲以及教學(xué)軟件的研發(fā)。

圖書目錄

第1章  數(shù)據(jù)結(jié)構(gòu)入門與算法  1
1.1  數(shù)據(jù)結(jié)構(gòu)的定義 2
1.1.1  數(shù)據(jù)與信息 2
1.1.2  數(shù)據(jù)的特性 3
1.1.3  數(shù)據(jù)結(jié)構(gòu)的應(yīng)用 4
1.2  算法 6
1.2.1  算法的條件 6
1.2.2  算法的表達(dá)方式 7
1.3  常見算法簡介 9
1.3.1  分治法 9
1.3.2  貪心法 10
1.3.3  枚舉法 11
1.3.4  帕斯卡三角形算法 13
1.3.5  質(zhì)數(shù)求解算法 14
1.4  算法性能的分析 15
1.4.1  Big-Oh 16
1.4.2  Ω(omega) 18
1.4.3  θ(theta) 19
本章習(xí)題 19
第2章  數(shù)組結(jié)構(gòu)  21
2.1  線性表簡介 21
2.2  認(rèn)識數(shù)組 23
2.2.1  二維數(shù)組 26
2.2.2  三維數(shù)組 29
2.2.3  n維數(shù)組 32
2.3  矩陣 33
2.3.1  矩陣相加 34
2.3.2  矩陣相乘 35
2.3.3  轉(zhuǎn)置矩陣 37
2.3.4  稀疏矩陣 38
2.3.5  上三角矩陣 41
2.3.6  下三角矩陣 45
2.3.7  帶狀矩陣 49
2.4  數(shù)組與多項式 49
本章習(xí)題 51
第3章  鏈表  53
3.1  動態(tài)分配內(nèi)存 53
3.2  單向鏈表 55
3.2.1  單向鏈表的建立 55
3.2.2  單向鏈表的遍歷 57
3.2.3  單向鏈表中新節(jié)點的插入 58
3.2.4  單向鏈表中節(jié)點的刪除 62
3.2.5  單向鏈表的反轉(zhuǎn) 66
3.2.6  單向鏈表的串接 69
3.2.7  多項式鏈表表示法 73
3.3  環(huán)形鏈表 74
3.3.1  環(huán)形鏈表的建立與遍歷 75
3.3.2  環(huán)形鏈表中新節(jié)點的插入 77
3.3.3  環(huán)形鏈表中節(jié)點的刪除 78
3.3.4  環(huán)形鏈表的串接 82
3.3.5  稀疏矩陣的環(huán)形鏈表表示法 84
3.4  雙向鏈表 87
3.4.1  雙向鏈表的建立與遍歷 87
3.4.2  雙向鏈表中新節(jié)點的插入 90
3.4.3  雙向鏈表中節(jié)點的刪除 94
本章習(xí)題 97
第4章  堆棧  99
4.1  堆棧簡介 99
4.1.1  用數(shù)組實現(xiàn)堆棧 100
4.1.2  用鏈表實現(xiàn)堆棧 103
4.2  堆棧的應(yīng)用 105
4.2.1  遞歸算法 106
4.2.2  動態(tài)規(guī)劃算法 110
4.2.3  漢諾塔問題 112
4.2.4  回溯法——老鼠走迷宮 118
4.2.5  八皇后問題 120
4.3  算術(shù)表達(dá)式的表示法 122
4.3.1  中序法轉(zhuǎn)為前序法與后序法 122
4.3.2  前序法與后序法表達(dá)式轉(zhuǎn)為中序法表達(dá)式 128
4.3.3  中序法求值 130
4.3.4  前序法求值 131
4.3.5  后序法求值 132
本章習(xí)題 133
第5章  隊列  136
5.1  認(rèn)識隊列 136
5.1.1  隊列的基本操作 137
5.1.2  用數(shù)組來實現(xiàn)隊列 137
5.1.3  用鏈表來實現(xiàn)隊列 140
5.2  環(huán)形隊列、雙向隊列與優(yōu)先隊列 143
5.2.1  環(huán)形隊列 143
5.2.2  雙向隊列 147
5.2.3  優(yōu)先隊列 150
本章習(xí)題 151
第6章  樹結(jié)構(gòu)  153
6.1  樹的基本概念 154
6.2  二叉樹 156
6.2.1  二叉樹的定義 156
6.2.2  特殊二叉樹簡介 157
6.3  二叉樹的存儲方式 159
6.3.1  用一維數(shù)組來實現(xiàn)二叉樹 159
6.3.2  用鏈表來實現(xiàn)二叉樹 161
6.4  二叉樹的遍歷 164
6.4.1  中序遍歷 164
6.4.2  后序遍歷 165
6.4.3  前序遍歷 166
6.4.4  二叉樹節(jié)點的插入與刪除 170
6.4.5  二叉運(yùn)算樹 175
6.5  線索二叉樹 177
6.6  樹的二叉樹表示法 182
6.6.1  樹轉(zhuǎn)化為二叉樹 182
6.6.2  二叉樹轉(zhuǎn)化為樹 183
6.6.3  森林轉(zhuǎn)化為二叉樹 183
6.6.4  二叉樹轉(zhuǎn)化為森林 184
6.6.5  樹與森林的遍歷 185
6.6.6  確定唯一二叉樹 187
6.7  優(yōu)化二叉查找樹 188
6.7.1  擴(kuò)充二叉樹 188
6.7.2  哈夫曼樹 189
6.8  平衡樹 190
6.9  高級樹結(jié)構(gòu)的應(yīng)用 194
6.9.1  博弈樹 194
6.9.2  B樹 196
6.9.3  二叉空間分割樹 198
6.9.4  四叉樹和八叉樹 199
本章習(xí)題 201
第7章  圖結(jié)構(gòu)  205
7.1  圖的簡介 205
7.1.1  歐拉環(huán)與歐拉鏈 206
7.1.2  圖的定義 207
7.1.3  無向圖 207
7.1.4  有向圖 208
7.2  圖的數(shù)據(jù)表示法 209
7.2.1  鄰接矩陣法 209
7.2.2  鄰接鏈表法 212
7.2.3  鄰接復(fù)合鏈表法 214
7.2.4  索引表格法 216
7.3  圖的遍歷 218
7.3.1  深度優(yōu)先遍歷 218
7.3.2  廣度優(yōu)先遍歷 221
7.4  生成樹 224
7.4.1  深度優(yōu)先生成樹和廣度優(yōu)先生成樹 225
7.4.2  最小生成樹 225
7.4.3  Kruskal算法 226
7.4.4  Prim算法 230
7.5  圖的最短路徑 232
7.5.1  單點對全部頂點——Dijkstra算法 232
7.5.2  兩兩頂點間的最短路徑——Floyd算法 236
7.5.3  A* 算法 238
7.6  AOV網(wǎng)絡(luò)與拓?fù)渑判?240
7.7  AOE網(wǎng)絡(luò) 242
本章習(xí)題 243
第8章  排序  247
8.1  排序簡介 247
8.1.1  排序的分類 248
8.1.2  排序算法分析 248
8.2  內(nèi)部排序法 249
8.2.1  冒泡排序法 250
8.2.2  選擇排序法 253
8.2.3  插入排序法 254
8.2.4  希爾排序法 256
8.2.5  合并排序法 258
8.2.6  快速排序法 259
8.2.7  堆積排序法 262
8.2.8  基數(shù)排序法 266
8.3  外部排序法 269
8.3.1  直接合并排序法 269
8.3.2  k-路合并法 273
本章習(xí)題 273
第9章  查找與哈希函數(shù)  277
9.1  常見的查找算法 277
9.1.1  順序查找法 278
9.1.2  二分查找法 280
9.1.3  插值查找法 282
9.1.4  斐波那契查找法 284
9.1.5  哈希查找法 288
9.2  常見的哈希法 289
9.2.1  除留余數(shù)法 289
9.2.2  平方取中法 290
9.2.3  折疊法 291
9.2.4  數(shù)字分析法 291
9.3  碰撞與溢出問題的處理 292
9.3.1  線性探測法 292
9.3.2  平方探測法 294
9.3.3  再哈希法 294
9.3.4  鏈表法 294
本章習(xí)題 298
附錄A  課后習(xí)題與參考答案 301
附錄B  數(shù)據(jù)結(jié)構(gòu)專有名詞索引(電子版見下載) 357
 

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號