第1章 算法基礎知識
1.1 算法簡介
1.2 算法描述形式
1.3 算法復雜性分析
1.3.1 時間復雜度
1.3.2 空間復雜度
習題
第2章 線性數據結構與算法
2.1 線性表
2.1.1 線性表定義及特點
2.1.2 順序表
2.1.3 鏈表
2.1.4 數組與鏈表性能比較
2.2 棧與隊列
2.2.1 棧
2.2.2 隊列
2.3 應用舉例
2.3.1 隊列應用舉例
2.3.2 棧應用舉例
習題
第3章 非線性數據結構與算法
3.1 樹與二叉樹
3.1.1 樹的基本概念
3.1.2 二叉樹
3.1.3 樹與二叉樹的存儲結構
3.1.4 樹的搜索
3.2 圖
3.2.1 圖的基本概念
3.2.2 圖的存儲結構
3.2.3 圖的搜索
3.3 應用舉例
3.3.1 課程安排問題
3.3.2 關鍵路徑問題
習題
第4章 遞歸與分治
4.1 遞歸法
4.1.1 遞歸思想
4.1.2 應用舉例
4.2 分治法
4.2.1 問題的提出
4.2.2 分治法概述
4.2.3 應用舉例
習題
第5章 貪心法
5.1 問題的提出
5.2 貪心法概述
5.3 應用舉例
5.3.1 哈夫曼編碼
5.3.2 單源最短路徑
5.3.3 最小生成樹
5.3.4 背包問題
5.3.5 多機調度問題
5.3.6 馬踏棋盤問題
習題
第6章 動態(tài)規(guī)劃
6.1 問題的提出
6.2 動態(tài)規(guī)劃法概述
6.3 應用舉例
6.3.1 多源最短路徑
6.3.2 背包問題
6.3.3 圖像壓縮
6.3.4 最長公共子序列問題
習題
第7章 回溯法
7.1 問題的提出
7.2 回溯法概述
7.3 應用舉例
7.3.1 背包問題
7.3.2 n皇后問題
7.3.3 組合問題
7.3.4 填字游戲
習題
第8章 分枝定界
參考文獻