定 價:¥49.00
作 者: | 吳燦銘,胡昭民 |
出版社: | 清華大學(xué)出版社 |
叢編項: | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787302509882 | 出版時間: | 2018-09-01 | 包裝: | 平裝 |
開本: | 16開 | 頁數(shù): | 字?jǐn)?shù): |
第1章 進入算法的世界 1
1.1 生活中到處都是算法 2
1.1.1 算法的定義 3
1.1.2 算法的條件 4
1.1.3 時間復(fù)雜度O(f(n)) 6
1.2 常見算法簡介 7
1.2.1 分治法 8
1.2.2 遞歸法 9
1.2.3 貪心法 11
1.2.4 動態(tài)規(guī)劃法 12
1.2.5 迭代法 13
1.2.6 枚舉法 14
1.2.7 回溯法 15
【課后習(xí)題】 18
第2章 常用的數(shù)據(jù)結(jié)構(gòu) 19
2.1 認(rèn)識數(shù)據(jù)結(jié)構(gòu) 19
2.2 數(shù)據(jù)結(jié)構(gòu)的種類 22
2.2.1 數(shù)組 23
2.2.2 鏈表 25
2.2.3 堆棧 26
2.2.4 隊列 27
2.3 樹形結(jié)構(gòu) 28
2.3.1 樹的基本觀念 29
2.3.2 二叉樹 30
2.4 圖形結(jié)構(gòu)簡介 32
2.5 哈希表 34
【課后習(xí)題】 35
第3章 排序算法 36
3.1 認(rèn)識排序 37
3.2 冒泡排序法 38
3.3 選擇排序法 40
3.4 插入排序法 42
3.5 希爾排序法 44
3.6 合并排序法 46
3.7 快速排序法 49
3.8 基數(shù)排序法 51
【課后習(xí)題】 53
第4章 查找與哈希算法 54
4.1 常見查找算法的介紹 55
4.1.1 順序查找法 55
4.1.2 二分查找法 56
4.1.3 插值查找法 58
4.2 常見的哈希法簡介 60
4.2.1 除留余數(shù)法 60
4.2.2 平方取中法 62
4.2.3 折疊法 62
4.2.4 數(shù)字分析法 63
4.3 碰撞與溢出問題的處理 64
4.3.1 線性探測法 64
4.3.2 平方探測法 65
4.3.3 再哈希法 66
【課后習(xí)題】 67
第5章 數(shù)組與鏈表算法 68
5.1 矩陣 68
5.1.1 矩陣相加算法 69
5.1.2 矩陣相乘 70
5.1.3 轉(zhuǎn)置矩陣 72
5.2 建立單向鏈表 73
5.2.1 單向鏈表的連接功能 74
5.2.2 單向鏈表的節(jié)點刪除 76
5.2.3 單向鏈表的反轉(zhuǎn) 79
【課后習(xí)題】 82
第6章 堆棧與隊列算法 83
6.1 用數(shù)組實現(xiàn)堆棧 83
6.2 用鏈表實現(xiàn)堆棧 85
6.3 漢諾塔問題的求解算法 87
6.4 八皇后問題的求解算法 93
6.5 用數(shù)組實現(xiàn)隊列 95
6.6 用鏈表實現(xiàn)隊列 98
6.7 雙向隊列 100
6.8 優(yōu)先隊列 103
【課后習(xí)題】 104
第7章 樹形結(jié)構(gòu)及其算法 105
7.1 用數(shù)組實現(xiàn)二叉樹 107
7.2 用鏈表實現(xiàn)二叉樹 109
7.3 二叉樹遍歷 111
7.4 二叉樹節(jié)點的查找 115
7.5 二叉樹節(jié)點的插入 116
7.6 二叉樹節(jié)點的刪除 118
7.7 堆積樹排序法 121
【課后習(xí)題】 127
第8章 圖的數(shù)據(jù)結(jié)構(gòu)及其算法 129
8.1 圖的遍歷 129
8.1.1 深度優(yōu)先遍歷法 130
8.1.2 廣度優(yōu)先遍歷法 132
8.2 最小生成樹(MST) 136
8.2.1 Prim算法 136
8.2.2 Kruskal算法 138
8.3 圖的最短路徑法 142
8.3.1 Dijkstra算法與 A* 算法 143
8.3.2 Floyd算法 148
【課后習(xí)題】 152
附錄 習(xí)題和解答 155