1 绪论 1
1.1 竞赛形式和成绩评定 2
1.2 试题形式 3
1.3 试题的知识范围 3
1.4 学习指导 5
2 计算机基础知识 9
2.1 数值计算 10
2.2 计算机基础知识 14
2.3 计算机网络知识 21
3 基本算法设计 27
3.1 枚举策略 27
3.2 归纳策略 36
3.3 分治策略 43
3.4 贪心策略 52
3.5 模拟策略 59
4 数值问题 67
4.1 基础数值问题 67
4.2 高精度算法 73
4.3 排列组合问题 84
4.4 递归问题 94
5 排序算法 98
5.1 排序的基本概念 98
5.2 插入排序 99
5.3 选择排序 102
5.4 交换排序 106
5.5 归并排序 110
5.6 排序方法的比较 112
6 深度与广度优先搜索 124
6.1 简单的搜索回溯 124
6.2 产生式系统 132
6.3 深度优先搜索 142
6.4 广度优先搜索 153
7 搜索优化策略 169
7.1 搜索剪枝 169
7.2 搜索与其他算法的结合 186
8.1 图的基本概念 193
8 图论算法 193
8.2 图的表示法及存储结构 195
8.3 图的遍历法 198
8.4 图的基本算法 205
8.5 图的应用 222
9 动态规划 229
9.1 动态规划的本质 229
9.2 动态规划算法的基本步骤 236
9.3 动态规划的应用 245
9.4 动态规划的优化技巧 256
附录:解题尝试答案及解题提示 269