第1章算法的概念
1.1算法的概念和描述
1.1.1算法的概念
1.1.2算法的描述
1.2算法的时间复杂度和空间复杂度
1.2.1算法的评价
1.2.2算法的时间复杂度
1.2.3算法的空间复杂度
习题1
第2章常用算法
2.1递归法
2.1.1递归的概念与基本思想
2.1.2递归法的应用
2.2分治法
2.2.1分治的概念与基本思想
2.2.2分治法的应用
2.3贪心法
2.3.1贪心的概念与基本思想
2.3.2贪心法的应用
2.4搜索法与回溯法
2.4.1搜索与回溯的概念与基本思想
2.4.2搜索法与回溯法的应用
习题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.2.4网格动态规划
3.3动态规划的深入研究
3.3.1树形动态规划
3.3.2状态压缩动态规划
3.3.3基于连通性的状态压缩动态规划
3.3.4数位计数类动态规划
3.4动态规划的优化方法
3.4.1减少状态总数
3.4.2利用数据结构加速状态转移过程
3.4.3四边形不等式优化
3.4.4斜率优化
习题3
第4章搜索算法中的优化技巧
4.1搜索中的剪枝技巧
4.2选择合适的搜索方向
4.3A*算法
4.4跳舞链
4.5搜索还是动态规划
习题4
第5章图上的算法
5.1并查集
5.2生成树
5.3最短路
5.4强连通分量
5.52—SAT
5.6差分约束
5.7二分图
5.8网络流
5.8.1网络流的概念
5.8.2最大流的求解方法
习题5
参考文献