作 者:(美)萊維汀(Anany Levitin) 著;潘彥 譯 著
定 價:69
出 版 社:清華大學出版社
出版日期:2015年02月01日
頁 數:423
裝 幀:平裝
ISBN:9787302386346
《算法設計與分析基礎(第3版)》在講述算法設計技術時采用了新的分類方法,在討論分析方法時條分縷析,形成了連貫有序,讓人耳目一新的風格。為便於學生掌握,《算法設計與分析基礎(第3版)》在全面涵蓋算法入門課程內容的同時,更注重對概念(而非形式)的理解。為了激發學生的興趣,書中還提供一些流行的謎題來幫助他們加強和提高解決算法問題的能力。精心設計的每章小結、習題提示和詳細解答這些鮮明的教學特色深受師生歡迎。
●第1章緒論
1.1什麼是算法
習題1.1
1.2算法問題求解基礎
1.2.1理解問題
1.2.2了解計算設備的性能
1.2.3在準確解法和近似解法之間做出選擇
1.2.4算法的設計技術
1.2.5確定適當的數據結構
1.2.6算法的描述
1.2.7算法的正確性證明
1.2.8算法的分析
1.2.9為算法寫代碼
習題1.2
1.3重要的問題類型
1.3.1排序
1.3.2查找
1.3.3字符串處理
1.3.4圖問題
1.3.5組合問題
1.3.6幾何問題
1.3.7數值問題
習題1.3
1.4基本數據結構
1.4.1線性數據結構
1.4.2圖
1.4.3樹
1.4.4集合與字典
習題1.4
小結
第2章算法效率分析基礎
2.1分析框架
2.1.1輸入規模的度量
2.1.2運行時間的度量單位
2.1.3增長次數
2.1.4算法的很優、最差和平均效率
2.1.5分析框架概要
習題2.1
2.2漸近符號和基本效率類型
2.2.1非正式的介紹
2.2.2符號O
2.2.3符號Q
2.2.4符號θ
2.2.5漸近符號的有用特性
2.2.6利用極限比較增長次數
2.2.7基本的效率類型
習題2.2
2.3非遞歸算法的數學分析
習題2.3
2.4遞歸算法的數學分析
習題2.4
2.5例題:計算第n個斐波那契數
習題2.5
2.6算法的經驗分析
習題2.6
2.7算法可視法
小結
第3章蠻力法
3.1選擇排序和冒泡排序
3.1.1選擇排序
3.1.2冒泡排序
習題3.1
3.2順序查找和蠻力字符串匹配
3.2.1順序查找
3.2.2蠻力字符串匹配
習題3.2
3.3最近對和凸包問題的蠻力算法
3.3.1最近對問題
3.3.2凸包問題
習題3.3
3.4窮舉查找
3.4.1旅行商問題
3.4.2背包問題
3.4.3分配問題
習題3.4
3.5深度優先查找和廣度優先查找
3.5.1深度優先查找
3.5.2廣度優先查找
習題3.5
小結
第4章減治法
4.1插入排序
習題4.1
4.2拓撲排序
習題4.2
4.3生成組合對像的算法
4.3.1生成排列
4.3.2生成子集
習題4.3
4.4減常因子算法
4.4.1折半查找
4.4.2 問題
4.4.3俄式乘法
4.4.4約瑟夫斯問題
習題4.4
4.5減可變規模算法
4.5.1計算中值和選擇問題
4.5.2插值查找
4.5.3二叉查找樹的查找和插入
4.5.4撚遊戲
習題4.5
小結
第5章分治法
5.1合並排序
習題5.1
5.2快速排序
習題5.2
5.3二叉樹遍歷及其相關特性
習題5.3
5.4大整數乘法和Strassen矩陣乘法
5.4.1大整數乘法
5.4.2Strassen矩陣乘法
習題5.4
5.5用分治法解最近對問題和凸包問題
5.5.1最近對問題
5.5.2凸包問題
習題5.5
小結
第6章變治法
6.1預排序
習題6.1
6.2高斯消去法
6.2.1LU分解
6.2.2計算矩陣的逆
6.2.3計算矩陣的行列式
習題6.2
6.3平衡查找樹
6.3.1AVL樹
6.3.22—3樹
習題6.3
6.4堆和堆排序
6.4.1堆的概念
6.4.2堆排序
習題6.4
6.5霍納法則和二進制冪
6.5.1霍納法則
6.5.2二進制冪
習題6.5
6.6問題化簡
6.6.1求最小公倍數
6.6.2計算圖中的路徑數量
6.6.3優化問題的化簡
6.6.4線性規劃
6.6.5簡化為圖問題
習題6.6
小結
第7章時空權衡
7.1計數排序
習題7.1
7.2字符串匹配中的輸入增強技術
7.2.1Horspool算法
7.2.2Boyer—Moore算法
習題7.2
7.3散列法
7.3.1開散列(分離鏈)
7.3.2閉散列(開式尋址)
習題7.3
7.4B樹
習題7.4
小結
第8章動態規劃
8.1三個基本例子
習題8.1
8.2背包問題和記憶功能
8.2.1背包問題
8.2.2記憶化
習題8.2
8.3很優二叉查找樹
習題8.3
8.4Warshall算法和Floyd算法
8.4.1Warshall算法
8.4.2計算接近最短路徑的Floyd算法
習題8.4
小結
第9章貪婪技術
9.1Prim算法
習題9.1
9.2Kruskal算法
習題9.2
9.3Diikstra算法
習題9.3
9.4哈夫曼樹及編碼
習題9.4
小結
第10章迭代改進
10.1單純形法
10.1.1線性規劃的幾何解釋
10.1.2單純形法概述
10.1.3單純形法其他要點
習題10.1
10.2優選流量問題
習題10.2
10.3二分圖的雖大匹配
習題10.3
10.4穩定婚姻問題
習題10.4
小結
第11章算法能力的極限
11.1如何求下界
11.1.1平凡下界
11.1.2信息論下界
11.1.3敵手下界
11.1.4問題化簡
習題11.1
11.2決策樹
11.2.1排序的決策樹
11.2.2查找有序數組的決策樹
習題11.2
11.3P、NP和NP接近問題
11.3.1P和NP問題
11.3.2NP接近問題
習題11.3
11.4數值算法的挑戰
習題11.4
小結
第12章超越算法能力的極限
12.1回溯法
12.1.1n皇後問題
12.1.2哈密頓回路問題
12.1.3子集和問題
12.1.4一般性說明
習題12.1
12.2分支界限法
12.2.1分配問題
12.2.2背包問題
12.2.3旅行商問題
習題12.2
12.3NP困難問題的近似算法
12.3.1旅行商問題的近似算法
12.3.2背包問題的近似算法
習題12.3
12.4解非線性方程的算法
12.4.1平分法
12.4.2試位法
12.4.3牛頓法
習題12.4
小結
跋
附錄A算法分析的實用公式
附錄B遞推關繫簡明指南
習題提示
參考文獻
作者基於豐富的教學經驗,開發了一套全新的算法分類方法。該分類法站在通用問題求解策略的高度,對現有大多數算法準確分類,從而引領讀者沿著一條清晰、一致、連貫的思路來探索算法設計與分析這一迷人領域。本書作為第3版,相對前版調整了多個章節的內容和順序,同時增加了一些算法,並擴展了算法的應用,使得具體算法和通用算法設計技術的對應更加清晰有序;各章累計增加了70道習題,其中包括一些有趣的謎題和面試問題。
本書十分適合用作算法設計和分析的基礎教材,也適合任何有興趣探究算法奧秘的讀者使用,隻要讀者具備數據結構和離散數學的知識即可。
(美)萊維汀(Anany Levitin) 著;潘彥 譯 著
(美)萊維汀(Anany Levitin),畢業於莫斯科國立大學並獲得數學碩士學位。他擁有耶路撒冷希伯來大學數學博士學位和美國肯塔基大學計算機科學碩士學位。他的著作《算法設計與分析基礎》已經被翻譯為中文、俄文、希臘文和韓文,並被優選數百所高校廣泛用作教材。目前,Lecitin博士在美國維拉諾瓦大學講授“算法設計與分析”課程。他的另一本著作是《算法謎題》。
潘彥,華東師範大學計算機科學學士、軟件工程碩士,上海財經大學管理學博士。有多年軟件和證券行業從業經歷,主要興趣領域為網上交易、融資融券、數據挖掘、交易所風控和算法交易等。代表譯著有Anany Levitin教等