算法與數(shù)據(jù)結(jié)構(gòu)(C&Java)(第2版)
定 價:52.8 元
- 作者:李廣水
- 出版時間:2023/2/1
- ISBN:9787121448652
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP311.12
- 頁碼:
- 紙張:
- 版次:
- 開本:
本書共10章,分別是緒論、線性表、棧和隊列、串、多維數(shù)組和廣義表、樹、圖、排序、查找和經(jīng)典算法分析。全書的算法程序基于C和Java兩種語言實現(xiàn)。本書的知識體系符合當(dāng)前對該課程的主流認知,從文字組織及示例設(shè)置上,將本書劃分為四個部分,基礎(chǔ)理論、基礎(chǔ)應(yīng)用、常規(guī)應(yīng)用和經(jīng)典算法分析,既體現(xiàn)了由理論到實踐的遞進,又保證了內(nèi)容的緊湊完整。本書是應(yīng)用型本科教材,覆蓋了“數(shù)據(jù)結(jié)構(gòu)”課程絕大部分知識范疇,并給出了算法實現(xiàn)代碼,對比較復(fù)雜的問題不僅給出了設(shè)計思路,還給出了具體示例分析,以幫助讀者理解和掌握,因此,本書也適合工程技術(shù)人員參考使用,同時可以作為相關(guān)專業(yè)學(xué)生的考研輔導(dǎo)用書。
李廣水,南京林業(yè)大學(xué)森林經(jīng)理博士,教授,金陵科技學(xué)院軟件工程學(xué)院教師,多次獲得江蘇省高等教育學(xué)會、教育科學(xué)研究院、校級教學(xué)成果獎,在軟件工程專業(yè)從事十幾年的教學(xué)工作,教學(xué)嚴謹,科研認真,主持江蘇省多項科研教學(xué)項目。
第1章 緒論1
1.1 數(shù)據(jù)結(jié)構(gòu)的概念1
1.2 為什么要學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)3
1.3 算法4
本章小結(jié)7
本章習(xí)題8
第2章 線性表10
2.1 基本概念與抽象數(shù)據(jù)類型10
2.2 順序表示12
2.3 鏈式表示14
2.4 單鏈表的改進和擴充20
2.5 應(yīng)用舉例23
2.6 鏈表相關(guān)操作的Java實現(xiàn)27
本章小結(jié)33
本章習(xí)題33
第3章 棧和隊列36
3.1 棧36
3.2 隊列42
3.3 堆棧與隊列的Java實現(xiàn)52
本章小結(jié)56
本章習(xí)題56
第4章 串59
4.1 串的基本概念與抽象數(shù)據(jù)類型59
4.2 串的存儲結(jié)構(gòu)62
4.3 串運算的實現(xiàn)66
4.4 KMP算法69
本章小結(jié)72
本章習(xí)題73
第5章 多維數(shù)組和廣義表74
5.1 多維數(shù)組74
5.2 矩陣的壓縮存儲76
5.3 廣義表84
本章小結(jié)89
本章習(xí)題89
第6章 樹91
6.1 樹、森林及其相關(guān)概念91
6.2 二叉樹及其相關(guān)特性93
6.3 二叉樹的存儲96
6.4 二叉樹的遍歷99
6.5 線索二叉樹103
6.6 二叉樹、樹和森林之間的轉(zhuǎn)換108
6.7 哈夫曼樹及其應(yīng)用110
6.8 二叉樹相關(guān)操作的Java實現(xiàn)118
本章小結(jié)122
本章習(xí)題122
第7章 圖125
7.1 圖的概念125
7.2 圖的存儲128
7.3 圖的遍歷135
7.4 生成樹和最小生成樹144
7.5 最短路徑153
7.6 拓撲排序156
7.7 關(guān)鍵路徑159
7.8 相關(guān)算法的Java實現(xiàn)165
本章小結(jié)171
本章習(xí)題171
第8章 排序175
8.1 基本概念175
8.2 插入排序177
8.3 交換排序182
8.4 選擇排序188
8.5 歸并排序194
8.6 內(nèi)部排序方法的比較和選擇198
8.7 排序算法的Java實現(xiàn)199
本章小結(jié)204
本章習(xí)題204
第9章 查找207
9.1 線性表的查找207
9.2 樹表的查找212
9.3 散列表的查找225
9.4 散列表(鏈地址法)的Java實現(xiàn)234
本章小結(jié)235
本章習(xí)題235
第10章 經(jīng)典算法分析238
10.1 分治算法238
10.2 動態(tài)規(guī)劃算法241
10.3 貪心算法245
10.4 回溯算法249
10.5 分支限界算法251
本章小結(jié)255
本章習(xí)題255
參考文獻 256