第一章 引言 1
习题一 3
第二章 鸽巢原理和Ramsey定理 5
1 鸽巢原理的简单形式及其应用 5
2 鸽巢原理的加强形式 7
3 Ramsey定理 9
习题二 15
第三章 排列和组合 17
1 加法法则和乘法法则 17
2 集合的排列和组合 18
3 多重集的排列和组合 23
习题三 28
第四章 二项式系数 33
1 二项式定理 33
2 组合恒等式 36
3 非降路径问题 43
4 牛顿二项式定理 48
5 多项式定理 51
习题四 54
第五章 包含排斥原理 58
1 包含排斥原理 58
2 多重集的γ-组合数 63
3 错位排列 65
4 有限制条件的排列问题 69
5 有禁区的排列问题 73
习题五 80
第六章 递推关系 82
1 Fibonacci数列 82
2 常系数线性齐次递推关系的求解 86
3 常系数线性非齐次递推关系的求解 94
4 用迭代和归纳法求解递推关系 98
习题六 102
1 生成函数的定义及性质 105
第七章 生成函数 105
2 多重集的γ-组合数 112
3 用生成函数来求解递推关系 115
4 正整数的剖分 117
5 指数生成函数与多重集的排列问题 125
6 Catalan数和Stirling数 131
习题七 144
第八章 Polya定理 147
1 置换群中的共轭类与轨道 147
2 Polya定理的特殊形式及其应用 152
3 带权的Polya定理 157
习题八 164
第九章 动态规划 167
1 动态规划方法的基本思想 167
2 背包问题 174
3 最小代价的字母树 177
习题九 181
第十章 回溯 184
1 回溯算法的基本思想 184
2 改进回溯算法的一些途径 188
3 估计回溯算法的效率 190
4 分支与界方法 192
5 游戏树与α-β裁剪技术 195
习题十 199
第十一章 启发式算法 202
1 贪心法 202
2 装箱问题 208
3 工作安排问题 215
4 在树形约束下的工作安排问题 221
习题十一 227
部分习题的解答或提示 229
参考书目 250