出版者的话 1
序言 1
方框目录 1
0 序论 1
0.1 书和算法 1
0.2 斐波那契数列 2
0.3 大O记号 6
习题 8
1 数的算法 11
1.1 基本算术 11
1.2 模运算 16
1.3 素性测试 23
1.4 密码学 30
1.5 全域散列 35
习题 38
虚拟章:随机化算法 29
2 分而治之算法 45
2.1 乘法 45
2.2 递归关系 49
2.3 合并排序 50
2.4 中位数 53
2.5 矩阵乘法 56
2.6 快速傅里叶变换 57
习题 70
3 图的分解 80
3.1 图论 80
3.2 无向图中的深度优先搜索 83
3.3 有向图中的深度优先搜索 87
3.4 强连通分量 91
习题 95
4 图的路径 104
4.1 距离 104
4.2 广度优先搜索 105
4.3 边的长度 107
4.4 Dijkstra算法 108
4.5 实现优先队列 113
4.6 带负权的边的图中的最短路径 115
4.7 有向无环图中的最短路径 119
习题 120
5 贪婪算法 127
5.1 最小生成树 127
5.2 赫夫曼编码 138
5.3 Horn公式 144
5.4 集合覆盖 145
习题 148
6 动态规划 156
6.1 回顾:有向无环图中的最短路径 156
6.2 最长递增子序列 157
6.3 编辑距离 159
6.4 背包问题 164
6.5 链式矩阵乘法 168
6.6 最短路径 171
6.7 树中的独立集 175
习题 177
7 线性规划与归约 188
7.1 线性规划入门 188
7.2 网络流 198
7.3 二部图匹配 205
7.4 对偶性 206
7.5 零和游戏 209
7.6 单纯形算法 213
7.7 附录:电路求值 221
习题 222
8 NP完全问题 232
8.1 搜索问题 232
8.2 NP完全问题 243
8.3 归约 247
习题 264
9 处理NP完全问题 271
9.1 智能穷举搜索 272
9.2 近似算法 276
9.3 局部启发式搜索 285
习题 293
10 量子算法 297
10.1 量子比特、叠加态与测量 297
10.2 下文纵览 301
10.3 量子傅里叶变换 303
10.4 周期性 305
10.5 量子电路 307
10.6 因子分解:利用周期性 310
10.7 因子分解的量子算法 311
习题 314
历史注记与扩展阅读 317
索引 319
注释 324