算法設計與分析(圖解版)
陳小玉
- 出版商: 人民郵電
- 出版日期: 2026-07-01
- 定價: $479
- 售價: $478
- 語言: 簡體中文
- 頁數: 302
- ISBN: 7115692254
- ISBN-13: 9787115692252
-
相關分類:
Algorithms-data-structures
下單後立即進貨 (約4週~6週)
商品描述
本書通過大量實例和圖例講解算法,圖文並茂,通俗易懂,引導讀者逐步建立起完整的算法知識體系。全書按照算法策略分為10章,包括算法入門、STL常用容器和函數、遞歸算法、貪心算法、分治算法、動態規劃算法、回溯法、分支限界法、網絡流算法和實用算法。
本書緊扣工程教育認證的要求,力求滿足新工科人才培養的需要,適合作為高等院校計算機及相關專業算法類課程的教材,也適合對算法感興趣的初學者以及需要提升算法能力的計算機行業從業人員閱讀。
作者簡介
陳小玉,副教授,軟件工程師,大數據分析師,ACM教練,信息學奧賽教練。所教學生多次獲得ACM亞洲區金牌、藍橋杯國際賽金牌。主要研究方向為機器學習與算法優化,主講算法設計與分析、數據結構、Python程序開發、機器學習應用、離散數學等課程,發表論文20余篇,出版著作6部,省級項目5項,國家發明專利1項。 有多年數據結構與算法教學經驗,擅長以完美圖解、通俗易懂的方式講解算法,受到讀者一致好評。榮獲“網易雲課堂新勢力講師”、教育科學優秀成果獎、教學成果獎等。在教學實踐中,不斷學習新知識、新思想,積極參與教育教學改革研究,探索新內容、新模式,不斷改進教學方法、教學內容和考核方式,提升課程達成度的目標。
目錄大綱
第 1章 算法入門 001
1.1 算法之美..............................................001
1.2 算法復雜度..........................................002
1.3 神奇的兔子數列..................................005
1.4 一棋盤的麥子......................................009
1.5 驚人大發現..........................................010
第 2章 STL 常用容器和函數 012
2.1 向量......................................................012
2.2 棧..........................................................014
2.3 隊列......................................................015
2.4 鏈表......................................................017
2.5 雙端隊列..............................................019
2.6 優先隊列..............................................022
2.7 映射......................................................024
2.8 STL 常用函數.....................................026
第3章 遞歸算法 032
3.1 遞歸算法..............................................032
3.2 斐波那契數列......................................034
3.3 逆序輸出..............................................035
3.4 最大公約數和最小公倍數..................036
3.5 反轉鏈表..............................................036
3.6 快速冪..................................................039
第4章 貪心算法 040
4.1 貪心算法秘籍......................................040
4.2 最優裝載..............................................041
4.3 會議安排..............................................044
4.4 哈夫曼編碼..........................................049
4.4.1 哈夫曼編碼................................ 049
4.4.2 哈夫曼編碼長度計算方法...... 060
4.5 最小生成樹..........................................062
4.5.1 Prim 算法.................................. 062
4.5.2 Kruskal 算法............................. 069
4.6 最短路徑..............................................073
4.6.1 Dijkstra 算法............................. 073
4.6.2 Floyd 算法................................. 078
4.6.3 Bellman-Ford 算法................... 081
4.6.4 SPFA 算法 ................................ 082
第5章 分治算法 088
5.1 分治算法..............................................088
5.1.1 分而治之 .................................. 088
5.1.2 分治算法秘籍.......................... 088
5.2 二分搜索..............................................089
5.2.1 二分查找 .................................. 089
5.2.2 二分查找的多種變體.............. 091
5.2.3 二分答案 .................................. 096
5.3 合並排序..............................................104
5.4 快速排序..............................................108
5.5 分治算法復雜度求解秘籍..................113
5.5.1 遞推法....................................... 113
5.5.2 遞歸樹....................................... 114
5.5.3 大師解法 .................................. 114
第6章 動態規劃算法 117
6.1 動態規劃算法......................................117
6.1.1 算法要素 .................................. 117
6.1.2 算法設計方法.......................... 118
6.2 爬樓梯..................................................119
6.3 最長上升子序列..................................121
6.4 最長公共子序列..................................125
6.5 編輯距離..............................................131
6.6 遊艇租賃..............................................136
6.7 矩陣連乘..............................................141
6.8 0/1 背包問題 .......................................148
6.9 沒有上司的舞會..................................155
6.10 動態規劃算法秘籍..............................159
第7章 回溯法 162
7.1 回溯法..................................................162
7.1.1 深度優先搜索.......................... 162
7.1.2 回溯法求解方法...................... 163
7.1.3 回溯法模板 .............................. 164
7.2 子集......................................................166
7.3 全排列..................................................167
7.3.1 交換法....................................... 167
7.3.2 標記法....................................... 169
7.4 組合......................................................171
7.5 0/1 背包問題 .......................................173
7.6 圖的著色..............................................179
7.7 n 皇後問題 ..........................................185
7.8 最優加工順序......................................196
第8章 分支限界法 203
8.1 分支限界法基礎..................................203
8.1.1 廣度優先搜索.......................... 203
8.1.2 分支限界法求解問題方法...... 205
8.2 0/1 背包問題 .......................................205
8.3 旅行商問題..........................................214
8.4 最優工程布線......................................220
8.5 回溯法與分支限界法的異同..............228
第9章 網絡流算法 229
9.1 最大網絡流..........................................231
9.1.1 EK 算法 .................................... 231
9.1.2 Dinic 算法................................. 235
9.1.3 ISAP 算法 ................................. 240
9.1.4 電力網絡 .................................. 243
9.1.5 美味佳肴 .................................. 246
9.2 二分圖匹配..........................................249
9.2.1 最大匹配算法.......................... 249
9.2.2 匈牙利算法 .............................. 250
9.2.3 飛行員配對方案...................... 252
9.2.4 星球轉移 .................................. 254
9.3 最大流最小割......................................256
9.3.1 最小邊割集 .............................. 257
9.3.2 最小點割集 .............................. 261
9.3.3 實驗儀器配置.......................... 262
9.4 最小費用最大流..................................265
9.5 網絡流問題求解秘籍..........................270
第 10章 實用算法 272
10.1 啟發式搜索算法.................................272
10.1.1 A* 算法................................... 272
10.1.2 IDA* 算法............................... 272
10.1.3 八數碼遊戲 ............................ 273
10.2 多模匹配算法.....................................281
10.2.1 字典樹..................................... 281
10.2.2 AC 自動機 .............................. 285
10.2.3 敏感詞過濾 ............................ 289
10.3 LRU 緩存淘汰算法............................291
10.3.1 LRU 算法................................ 291
10.3.2 哈希鏈表 ................................ 292
10.3.3 算法詳解 ................................ 294
10.3.4 算法分析 ................................ 297
10.4 LFU 緩存淘汰算法............................297
10.4.1 LFU 算法 ................................ 297
10.4.2 哈希鏈表 ................................ 298
10.4.3 算法詳解 ................................ 300
10.4.4 算法分析 ................................ 302

