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

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

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

定 價:¥89.00

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

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

內(nèi)容簡介

  本書是一本綜合講述數(shù)據(jù)結(jié)構(gòu)及其算法的入門書,內(nèi)容淺顯易懂、邏輯嚴(yán)謹(jǐn),力求在適用性上兼顧教師教學(xué)和學(xué)生自學(xué)。 全書從基本的數(shù)據(jù)結(jié)構(gòu)概念開始講解,以新版的Java語言詳細(xì)詮釋數(shù)組結(jié)構(gòu)、隊列、堆棧、鏈表、樹結(jié)構(gòu)、圖結(jié)構(gòu)、排序和查找等數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)知識,書中收錄了精華的算法及范例程序的實現(xiàn)過程,輔以豐富的圖示解析。全書的范例程序均采用Eclipse IDE for Java Developers集成開發(fā)工具進(jìn)行編譯、執(zhí)行、測試及調(diào)試。此外,本書各章末尾都安排了配合教學(xué)內(nèi)容的習(xí)題和選自各類考試的試題,并在附錄中提供了解答,可供讀者測試學(xué)習(xí)效果。 本書圖文并茂,敘述簡潔、清晰,范例豐富、可操作性強,是一本數(shù)據(jù)結(jié)構(gòu)普及型的教科書和自學(xué)參考書。適用于具有一定編程能力又想增加編程“深度”的非信息專業(yè)類人員或?qū)W生。

作者簡介

  吳燦銘,現(xiàn)任榮欽科技股份有限公司執(zhí)行長,美國Rochester Institute of Technology計算機科學(xué)研究所畢業(yè),長期從事信息教育及計算機圖書寫作的工作,計算機圖書著作包括計算器概論、數(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)的定義 1
1.1.1  數(shù)據(jù)與信息 2
1.1.2  數(shù)據(jù)的特性 2
1.2  算法 3
1.2.1  到處都是算法 3
1.2.2  算法的定義 4
1.3  算法性能的分析 6
1.3.1  Big-Oh 7
1.3.2  Ω(omega) 10
1.3.3  θ(theta) 10
1.4  常見算法介紹 10
1.4.1  分治法 10
1.4.2  遞歸法 11
1.4.3  貪心法 14
1.4.4  動態(tài)規(guī)劃法 15
1.4.5  迭代法 16
1.4.6  枚舉法 17
1.5  認(rèn)識程序設(shè)計 18
1.5.1  程序開發(fā)流程 19
1.5.2  結(jié)構(gòu)化程序設(shè)計 19
1.5.3  面向?qū)ο蟪绦蛟O(shè)計 20
本章習(xí)題 22
第2章  數(shù)組結(jié)構(gòu)  24
2.1  線性表簡介 24
2.2  認(rèn)識數(shù)組 25
2.2.1  一維數(shù)組 26
2.2.2  二維數(shù)組 28
2.2.3  三維數(shù)組 31
2.2.4  n維數(shù)組 34
2.3  矩陣 34
2.3.1  矩陣相加 35
2.3.2  矩陣相乘 37
2.3.3  轉(zhuǎn)置矩陣 40
2.3.4  稀疏矩陣 41
2.3.5  上三角矩陣 44
2.3.6  下三角矩陣 49
2.3.7  帶狀矩陣 53
2.4  數(shù)組與多項式 54
本章習(xí)題 56
第3章  鏈表  58
3.1  動態(tài)分配內(nèi)存 58
3.2  單向鏈表 59
3.2.1  建立單向鏈表 60
3.2.2  單向鏈表中節(jié)點的刪除 64
3.2.3  單向鏈表中新節(jié)點的
插入 69
3.2.4  單向鏈表的反轉(zhuǎn) 73
3.2.5  單向鏈表的串接 76
3.2.6  多項式鏈表表示法 77
3.3  環(huán)形鏈表 83
3.3.1  環(huán)形鏈表中新節(jié)點的
插入 84
3.3.2  環(huán)形鏈表中節(jié)點的刪除 84
3.3.3  環(huán)形鏈表的串接 87
3.3.4  稀疏矩陣的環(huán)形鏈表
表示法 91
3.4  雙向鏈表 93
3.4.1  雙向鏈表的定義 93
3.4.2  雙向鏈表中新節(jié)點的
插入 94
3.4.3  雙向鏈表中節(jié)點的刪除 95
本章習(xí)題 98
第4章  堆棧  100
4.1  堆棧簡介 100
4.1.1  用數(shù)組實現(xiàn)堆棧 101
4.1.2  用鏈表實現(xiàn)堆棧 105
4.2  堆棧的應(yīng)用 109
4.2.1  漢諾塔問題 110
4.2.2  老鼠走迷宮 116
4.2.3  八皇后問題 121
4.3  算術(shù)表達(dá)式的表示法 124
4.3.1  中序法求值 125
4.3.2  前序法求值 126
4.3.3  后序法求值 127
4.4  中序法轉(zhuǎn)為前序法與后序法 128
4.4.1  二叉樹法 128
4.4.2  括號法 128
4.4.3  堆棧法 129
4.5  前序法與后序法表達(dá)式
轉(zhuǎn)換成中序法表達(dá)式 134
4.5.1  括號法 134
4.5.2  堆棧法 135
本章習(xí)題 137
第5章  隊列  139
5.1  認(rèn)識隊列 139
5.1.1  隊列的基本操作 140
5.1.2  用數(shù)組來實現(xiàn)隊列 140
5.1.3  用鏈表來實現(xiàn)隊列 143
5.2  隊列的應(yīng)用 145
5.2.1  環(huán)形隊列 145
5.2.2  雙向隊列 149
5.2.3  優(yōu)先隊列 152
本章習(xí)題 153
第6章  樹結(jié)構(gòu)  154
6.1  樹的基本概念 155
6.2  二叉樹簡介 157
6.2.1  二叉樹的定義 157
6.2.2  特殊二叉樹簡介 158
6.3  二叉樹的存儲方式 160
6.3.1  用一維數(shù)組來實現(xiàn)
二叉樹 160
6.3.2  用鏈表來實現(xiàn)二叉樹 162
6.4  二叉樹的遍歷 164
6.4.1  中序遍歷 165
6.4.2  后序遍歷 166
6.4.3  前序遍歷 166
6.4.4  二叉樹遍歷的實現(xiàn) 168
6.4.5  二叉運算樹 171
6.5  二叉樹的高級研究 176
6.5.1  二叉排序樹 176
6.5.2  二叉查找樹 181
6.5.3  線索二叉樹 184
6.6  樹的二叉樹表示法 189
6.6.1  樹轉(zhuǎn)化為二叉樹 189
6.6.2  二叉樹轉(zhuǎn)化為樹 191
6.6.3  森林轉(zhuǎn)化為二叉樹 192
6.6.4  二叉樹轉(zhuǎn)化為森林 193
6.6.5  樹與森林的遍歷 194
6.6.6  確定唯一二叉樹 197
6.7  優(yōu)化二叉查找樹 199
6.7.1  擴充二叉樹 199
6.7.2  哈夫曼樹 201
6.8  平衡樹 202
6.8.1  平衡樹的定義 202
6.8.2  B樹 204
本章習(xí)題 204
第7章  圖結(jié)構(gòu)  208
7.1  圖的簡介 209
7.1.1  圖的定義 209
7.1.2  無向圖 210
7.1.3  有向圖 211
7.2  圖的數(shù)據(jù)表示法 212
7.2.1  鄰接矩陣法 212
7.2.2  鄰接鏈表法 216
7.2.3  鄰接復(fù)合鏈表法 220
7.2.4  索引表格法 221
7.3  圖的遍歷 223
7.3.1  深度優(yōu)先遍歷 223
7.3.2  廣度優(yōu)先遍歷 227
7.4  生成樹 230
7.5  最小生成樹 231
7.5.1  Prim算法 232
7.5.2  Kruskal算法 233
7.6  圖的最短路徑 238
7.6.1  單點對全部頂點——
Dijkstra算法與A*算法 238
7.6.2  兩兩頂點間的最短路徑
——Floyd算法 244
7.7  AOV網(wǎng)絡(luò)與拓?fù)渑判?248
7.8  AOE網(wǎng)絡(luò) 251
本章習(xí)題 252
第8章  排序  256
8.1  排序簡介 257
8.1.1  排序的分類 257
8.1.2  排序算法分析 258
8.2  內(nèi)部排序法 258
8.2.1  冒泡排序法 259
8.2.2  選擇排序法 264
8.2.3  插入排序法 266
8.2.4  希爾排序法 269
8.2.5  合并排序法 272
8.2.6  快速排序法 273
8.2.7  堆積排序法 277
8.2.8  基數(shù)排序法 282
8.3  外部排序法 285
8.3.1  直接合并排序法 285
8.3.2  k-路合并法 293
8.3.3  多相合并法 294
本章習(xí)題 295
第9章  查找  298
9.1  常見的查找方法 298
9.1.1  順序查找法 299
9.1.2  二分查找法 301
9.1.3  插值查找法 304
9.1.4  斐波那契查找法 306
9.2  哈希查找法 308
9.3  常見的哈希法 309
9.3.1  除留余數(shù)法 309
9.3.2  平方取中法 310
9.3.3  折疊法 311
9.3.4  數(shù)字分析法 312
9.4  碰撞與溢出問題的處理 313
9.4.1  線性探測法 313
9.4.2  平方探測法 315
9.4.3  再哈希法 315
9.4.4  鏈表法 316
9.4.5  哈希法綜合范例 318
本章習(xí)題 321
附錄A  Java開發(fā)環(huán)境簡介 323
附錄B  課后習(xí)題與參考答案 333
附錄C  數(shù)據(jù)結(jié)構(gòu)專有名詞索引
(電子版見下載) 379

本目錄推薦

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