注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡計算機科學理論與基礎知識算法設計與分析(第3版)

算法設計與分析(第3版)

算法設計與分析(第3版)

定 價:¥59.80

作 者: 鄭宗漢,鄭曉明 著
出版社: 清華大學出版社
叢編項:
標 簽: 暫缺

購買這本書可以去


ISBN: 9787302457206 出版時間: 2017-10-01 包裝: 平裝
開本: 16開 頁數: 429 字數:  

內容簡介

  《算法設計與分析》系統(tǒng)地介紹了算法設計與分析的概念和方法,共4篇內容。第1篇介紹算法設計與分析的基本概念,結合窮舉法、排序問題及其他一些算法,對算法的時間復雜性的概念及復雜性的分析方法作了較為詳細的敘述;第2篇以算法設計技術為綱,從合并排序、堆排序、離散集合的union和find操作開始,進而介紹遞歸技術、分治法、貪婪法、動態(tài)規(guī)劃、回溯法、分支與限界法和隨機算法等算法設計技術及其復雜性分析;第3篇介紹計算機應用領域里的一些算法,如圖和網絡流,以及計算幾何中的一些問題;第4篇介紹算法設計與分析中的一些理論問題,如NP完全問題、計算復雜性問題、下界理論問題,最后介紹近似算法及其性能分析。 《算法設計與分析》內容選材適當、編排合理、由淺入深、循序漸進、互相銜接、逐步展開,并附有大量實例,既注重算法的思想方法、推導過程和正確性的證明技術,也注重算法所涉及的數據結構、算法的具體實現和算法的工作過程。 《算法設計與分析》可作為高等院校計算機專業(yè)本科生和研究生的教材,也可作為計算機科學與應用的科學技術人員的參考資料。

作者簡介

暫缺《算法設計與分析(第3版)》作者簡介

圖書目錄

目 錄
第1篇 算法設計與分析的基本概念

第1章 算法的基本概念 2
1.1 引言 2
1.1.1 算法的定義和特征 2
1.1.2 算法設計的例子——窮舉法 4
1.1.3 算法的復雜性分析 7
1.2 算法的時間復雜性 8
1.2.1 算法的輸入規(guī)模和運行時間的階 8
1.2.2 運行時間的上界——O記號 11
1.2.3 運行時間的下界——Ω記號 12
1.2.4 運行時間的準確界——Θ記號 13
1.2.5 O記號、Ω記號、Θ記號的性質 17
1.2.6 復雜性類型和o記號 18
習題 19
參考文獻 20

第2章 算法的復雜性分析 21
2.1 常用的函數和公式 21
2.1.1 整數函數 21
2.1.2 對數函數 22
2.1.3 排列、組合和二項式系數 23
2.1.4 級數求和 24
2.2 算法的時間復雜性分析 25
2.2.1 循環(huán)次數的統(tǒng)計 26
2.2.2 基本操作頻率的統(tǒng)計 29
2.2.3 計算步的統(tǒng)計 32
2.3 最好情況、最壞情況和平均情況分析 33
2.3.1 最好情況、最壞情況和平均情況 33
2.3.2 最好情況和最壞情況分析 34
2.3.3 平均情況分析 37

2.4 用生成函數求解遞歸方程 40
2.4.1 生成函數及其性質 40
2.4.2 用生成函數求解遞歸方程 43
2.5 用特征方程求解遞歸方程 46
2.5.1 k階常系數線性齊次遞歸方程 47
2.5.2 k階常系數線性非齊次遞歸方程 49
2.6 用遞推方法求解遞歸方程 51
2.6.1 遞推 52
2.6.2 用遞推法求解變系數遞歸方程 52
2.6.3 換名 54
2.7 算法的空間復雜性 56
2.8 最優(yōu)算法 57
習題 58
參考文獻 60

第2篇 算法設計的基本技術

第3章 排序問題和離散集合的操作 62
3.1 合并排序 62
3.1.1 合并排序算法的實現 62
3.1.2 合并排序算法的分析 64
3.2 基于堆的排序 65
3.2.1 堆 66
3.2.2 堆的操作 67
3.2.3 堆的建立 70
3.2.4 堆的排序 73
3.3 基數排序 74
3.3.1 基數排序算法的思想方法 74
3.3.2 基數排序算法的實現 76
3.3.3 基數排序算法的分析 78
3.4 離散集合的Union_Find操作 79
3.4.1 用于Union_Find操作的數據結構 79
3.4.2 union、find操作及路徑壓縮 81
習題 84
參考文獻 85

第4章 遞歸和分治 86
4.1 基于歸納的遞歸算法 86
4.1.1 基于歸納的遞歸算法的思想方法 86
4.1.2 遞歸算法的例子 87
4.1.3 排列問題的遞歸算法 91
4.1.4 求數組主元素的遞歸算法 95
4.1.5 整數劃分問題的遞歸算法 98
4.2 分治法 100
4.2.1 分治法的例子 100
4.2.2 分治法的設計原理 104
4.2.3 快速排序 111
4.2.4 多項式乘積和大整數乘法 116
4.2.5 平面點集最接近點對問題 123
4.2.6 選擇問題 130
4.2.7 殘缺棋盤問題 136
習題 141
參考文獻 143

第5章 貪婪法 145
5.1 貪婪法概述 146
5.1.1 貪婪法的設計思想 146
5.1.2 貪婪法的例子——貨郎擔問題 147
5.2 背包問題 148
5.2.1 背包問題貪婪算法的實現 148
5.2.2 背包問題貪婪算法的分析 150
5.3 單源最短路徑問題 151
5.3.1 解最短路徑的狄斯奎諾算法 151
5.3.2 狄斯奎諾算法的實現 153
5.3.3 狄斯奎諾算法的分析 155
5.4 最小花費生成樹問題 156
5.4.1 最小花費生成樹概述 156
5.4.2 克魯斯卡爾算法 157
5.4.3 普里姆算法 161
5.5 霍夫曼編碼問題 165
5.5.1 前綴碼和最優(yōu)二叉樹 165
5.5.2 霍夫曼編碼的實現 169
習題 171
參考文獻 173

第6章 動態(tài)規(guī)劃 174
6.1 動態(tài)規(guī)劃的思想方法 174
6.1.1 動態(tài)規(guī)劃的最優(yōu)決策原理 174
6.1.2 動態(tài)規(guī)劃實例——貨郎擔問題 175
6.2 多段圖的最短路徑問題 177
6.2.1 多段圖的決策過程 178
6.2.2 多段圖動態(tài)規(guī)劃算法的實現 180
6.3 資源分配問題 181
6.3.1 資源分配的決策過程 182
6.3.2 資源分配算法的實現 184
6.4 設備更新問題 187
6.4.1 設備更新問題的決策過程 187
6.4.2 設備更新算法的實現 190
6.5 最長公共子序列問題 192
6.5.1 最長公共子序列的搜索過程 192
6.5.2 最長公共子序列算法的實現 195
6.6 0/1背包問題 196
6.6.1 0/1背包問題的求解過程 196
6.6.2 0/1背包問題的實現 198
6.7 RNA最大堿基對匹配問題 199
6.7.1 RNA最大堿基對匹配的搜索過程 200
6.7.2 RNA最大堿基對匹配算法的實現 203
習題 205
參考文獻 207

第7章 回溯 208
7.1 回溯法的思想方法 208
7.1.1 問題的解空間和狀態(tài)空間樹 208
7.1.2 狀態(tài)空間樹的動態(tài)搜索 209
7.1.3 回溯法的一般性描述 211
7.2 n皇后問題 213
7.2.1 n皇后問題的求解過程 213
7.2.2 n皇后問題算法的實現 215
7.3 圖的著色問題 217
7.3.1 圖著色問題的求解過程 218
7.3.2 圖的m著色問題算法的實現 220
7.4 哈密爾頓回路問題 222
7.4.1 哈密爾頓回路的求解過程 222
7.4.2 哈密爾頓回路算法的實現 224
7.5 0/1背包問題 225
7.5.1 回溯法解0/1背包問題的求解過程 226
7.5.2 回溯法解0/1背包問題算法的實現 229
7.6 回溯法的效率分析 231
習題 234
參考文獻 235

第8章 分支與限界 236
8.1 分支與限界法的基本思想 236
8.2 作業(yè)分配問題 238
8.2.1 分支限界法解作業(yè)分配問題的思想方法 238
8.2.2 分支限界法解作業(yè)分配問題算法的實現 241
8.3 單源最短路徑問題 244
8.3.1 分支限界法解單源最短路徑問題的思想方法 244
8.3.2 分支限界法解單源最短路徑問題算法的實現 246
8.4 0/1背包問題 248
8.4.1 分支限界法解0/1背包問題的思想方法和求解過程 249
8.4.2 0/1背包問題分支限界算法的實現 251
8.5 貨郎擔問題 254
8.5.1 費用矩陣的特性及歸約 254
8.5.2 界限的確定和分支的選擇 256
8.5.3 貨郎擔問題的求解過程 259
8.5.4 幾個輔助函數的實現 262
8.5.5 貨郎擔問題分支限界算法的實現 268
習題 271
參考文獻 272

第9章 隨機算法 273
9.1 隨機算法概述 273
9.1.1 隨機算法的類型 273
9.1.2 隨機數發(fā)生器 274
9.2 舍伍德算法 275
9.2.1 隨機快速排序算法 275
9.2.2 隨機選擇算法 277
9.3 拉斯維加斯算法 280
9.3.1 字符串匹配 280
9.3.2 整數因子 284
9.4 蒙特卡羅算法 285
9.4.1 數組的主元素問題 285
9.4.2 素數測試 287
習題 290
參考文獻 291

第3篇 計算機應用領域的一些基法

第10章 圖和網絡問題 294
10.1 圖的遍歷 294
10.1.1 圖的深度優(yōu)先搜索遍歷 294
10.1.2 圖的廣度優(yōu)先搜索遍歷 299
10.1.3 無向圖的接合點 301
10.1.4 有向圖的強連通分支 305
10.2 網絡流 308
10.2.1 網絡流的概念 308
10.2.2 Ford_Fulkerson方法和最大容量增廣 312
10.2.3 最短路徑增廣 315
10.3 二分圖的最大匹配問題 320
10.3.1 預備知識 321
10.3.2 二分圖最大匹配的匈牙利樹方法 323
習題 329
參考文獻 331

第11章 計算幾何問題 332
11.1 引言 332
11.2 平面線段的交點問題 334
11.2.1 尋找平面線段交點的思想方法 335
11.2.2 尋找平面線段交點的實現 337
11.3 凸殼問題 342
11.3.1 凸殼問題的格雷厄姆掃描法 343
11.3.2 格雷厄姆掃描法的實現 344
11.4 平面點集的直徑問題 346
11.4.1 求取平面點集直徑的思想方法 346
11.4.2 平面點集直徑的求取 348
習題 350
參考文獻 351

第4篇 算法設計與分析的一些理論問題

第12章 NP完全問題 354
12.1 P類和NP類問題 355
12.1.1 P類問題 355
12.1.2 NP類問題 356
12.2 NP完全問題 358
12.2.1 NP完全問題的定義 358
12.2.2 幾個典型的NP完全問題 360
12.2.3 其他NP完全問題 366
12.3 co_NP類和NPI類問題 366
習題 369
參考文獻 370

第13章 計算復雜性 371
13.1 計算模型 371
13.1.1 圖靈機的基本模型 371
13.1.2 k帶圖靈機和時間復雜性 374
13.1.3 離線圖靈機和空間復雜性 376
13.1.4 可滿足性問題和Cook定理 379
13.2 復雜性類型之間的關系 381
13.2.1 時間復雜性和空間復雜性的關系 382
13.2.2 時間譜系定理和空間譜系定理 384
13.2.3 填充變元 389
13.3 歸約性關系 391
13.4 完備性 394
13.4.1 NLOGSPACE完全問題 394
13.4.2 PSPACE完全問題和P完全問題 396
習題 397
參考文獻 398

第14章 下界 399
14.1 平凡下界 399
14.2 判定樹模型 399
14.2.1 檢索問題 400
14.2.2 排序問題 401
14.3 代數判定樹模型 402
14.3.1 代數判定樹模型及下界定理 402
14.3.2 極點問題 404
14.4 線性時間歸約 405
14.4.1 凸殼問題 406
14.4.2 多項式插值問題 406
習題 408
參考文獻 408

第15章 近似算法 409
15.1 近似算法的性能 409
15.2 裝箱問題 410
15.2.1 首次適宜算法 411
15.2.2 最適宜算法及其他算法 412
15.3 頂點覆蓋問題 414
15.4 貨郎擔問題 416
15.4.1 歐幾里得貨郎擔問題 417
15.4.2 一般的貨郎擔問題 419
15.5 多項式近似方案 419
15.5.1 0/1背包問題的多項式近似方案 420
15.5.2 子集求和問題的完全多項式近似方案 423
習題 425
參考文獻 426

參考文獻 427



本目錄推薦

掃描二維碼
Copyright ? 讀書網 www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號