本書內容共分四部分,第一部分算法概述,給出了算法的基本概念及算法分析的相關基礎;第二部分六大經(jīng)典算法的設計與分析技術,包括遞歸與分治策略、動態(tài)規(guī)劃、貪心算法、回溯法、分支限界法、隨機算法,從算法設計和算法分析的理論入手,根據(jù)各類算法的基本技術原理,給出算法的分析方法和證明過程,并將經(jīng)典算法與應用問題相結合,提供多類別應用的范例;第三部分NP完全性理論,從計算本質的角度討論計算模型的意義與作用,并分析NP完全問題的求解技術;第四部分神經(jīng)網(wǎng)絡智能算法,反映了近年來智能算法研究的新發(fā)展。各章附有大量算法示例和習題,這些解決問題的范例有利于學習者對書中內容的理解和應用。附錄中編排了綜合試題并附有參考答案提示,便于學習者總結與提高。
《現(xiàn)代信息科學技術基礎:算法設計與分析》可作為高等院校計算機算法設計與分析相關課程的本科生或研究生教學參考書,也可供計算機理論研究人員、計算機算法設計人員學習參考。
耿國華,教授,博士生導師,高等學校教學名師,享受國務院政府津貼,西北大學信息科學與技術學院副院長,教育部文科計算機基礎教學指導委員會副主任,陜西省計算機學會副理事長,陜西省計算機教育學會副理事長,陜西省計算機學會人工智能與模式識別專業(yè)委員會副主任,西北大學計算機軟件開發(fā)中心主任,長期從事智能信息處理、模式識別、信息可視化技術研究。
第1章 算法概述
1.1 算法的概念
1.1.1 算法的定義和特性
1.1.2 求解問題的基本過程
1.1.3 算法設計示例——計算最大公約數(shù)
1.2 算法設計與分析任務
1.3 算法分析準則
1.4 算法分析基礎
1.4.1 常用數(shù)學術語
1.4.2 對數(shù)與指數(shù)
1.4.3 數(shù)學證明法
1.5 算法復雜性分析方法
1.5.1 復雜度函數(shù)
1.5.2 最好、最壞和平均情況
1.5.3 漸進分析
第1章 算法概述
1.1 算法的概念
1.1.1 算法的定義和特性
1.1.2 求解問題的基本過程
1.1.3 算法設計示例——計算最大公約數(shù)
1.2 算法設計與分析任務
1.3 算法分析準則
1.4 算法分析基礎
1.4.1 常用數(shù)學術語
1.4.2 對數(shù)與指數(shù)
1.4.3 數(shù)學證明法
1.5 算法復雜性分析方法
1.5.1 復雜度函數(shù)
1.5.2 最好、最壞和平均情況
1.5.3 漸進分析
1.5.4 階的證明方法
小結
習題
第2章 遞歸與分治策略
2.1 遞歸的概念
2.2 具有遞歸特性的問題
2.3 遞歸過程的設計與實現(xiàn)
2.4 遞歸算法分析
2.4.1 替換法
2.4.2 遞歸樹法
2.4.3 主方法
2.5 分治法的基本思想
2.6 分治法的適用條件
2.7 分治法的基本步驟
2.8 分治法典型示例
2.8.1 n個數(shù)中求出最大/最小值
2.8.2 快速排序
2.8.3 大整數(shù)乘法
2.8.4 折半查找
2.8.5 矩陣乘法
小結
習題
第3章 動態(tài)規(guī)劃
3.1 動態(tài)規(guī)劃基礎
3.1.1 動態(tài)規(guī)劃的基本思想
3.1.2 動態(tài)規(guī)劃的基本要素
3.1.3 動態(tài)規(guī)劃的基本步驟
3.1.4 動態(tài)規(guī)劃示例——組合數(shù)問題
3.2 線性動態(tài)規(guī)劃——合唱隊形問題
3.3 區(qū)域動態(tài)規(guī)劃——矩陣連乘問題(最佳次序)
3.4 背包動態(tài)規(guī)劃——0-1背包問題
3.5 樹形動態(tài)規(guī)劃——最優(yōu)二叉搜索樹
小結
習題
第4章 貪心算法
4.1 貪心算法基礎
4.1.1 貪心算法的基本思想
4.1.2 貪心算法的基本要素
4.1.3 貪心算法適合的問題
4.1.4 貪心算法的基本步驟
4.1.5 貪心算法示例——背包問題
4.2 汽車加油問題
4.3 最優(yōu)服務次序問題
4.4 區(qū)間相交問題
4.5 單源最短路徑
小結
習題
第5章 回溯法
第6章 分支限界法
第7章 隨機算法
第8章 NP完全性理論
第9章 神經(jīng)智能算法
附錄 試題及參考答案
參考文獻