1、第 1 部分 基 本 算 法第 1 章 数学准备1.1 母函数1.2 递推关系1.3 Fibonacci 数列1.3.1 Fibonacci 数列是典型的递推关系1.3.2 问题的解1.4 线性常系数递推关系举例1.5 其他类型的递推关系举例习题第 2 章 优先策略与分治策略2.1 优先策略:求最短树的 Kruskal 算法2.2 求最短树的 Prim 算法2.3 求最短路径的 Dijkstra 算法2.4 文件存储问题2.5 有期限的任务安排问题2.6 数据压缩和 Huffman 树2.7 分治策略与二分查找2.8 整数乘法2.9 矩阵乘积的 Strassen 算法2.10 矩阵乘积的 Wi
2、nograd 算法2.11 布尔矩阵乘积的分段预处理方法2.12 归并排序法2.13 快速排序法2.14 求序列中的第 k 个元素习题第 3 章 动态规划3.1 最短路径问题3.2 最佳原理3.3 流动推销员问题3.3.1 算法及例题3.3.2 复杂性估计3.4 矩阵链乘问题3.5 最长公共子序列3.6 图的任意两点间的最短距离3.7 同顺序流水作业的任务安排问题3.8 可靠性问题3.9 最佳二分树3.9.1 二分树的一些性质3.9.2 最佳二分树的构成习题第 4 章 概率算法4.1 生日问题4.2 概率算法举例4.3 随机数的产生器4.3.1 线性同余式法4.3.2 离散对数法4.3.3 BBS 法4.3.4 素数法4.4 素数的概率判定算法4.4.1 关于素数的若干定理4.4.2 Fermat 数4.4.3 Miller Rabin 的素数概率测试法4.5 定理证明的数学准备4.5.1 数论的基本知识4.5.2 群论的基本知识4.5.3 中国剩余定理4.5.4 xn1 mod p 的解4.6 定理 A 的证明4.7 定理 B 的证明习题第 5 章 并行算法5.1 并行计算机和并行算法的基本概念5.2 递推关系的并行计算5.3 图的并行算法举例5.4 矩阵乘积的并行计算5.5 分布计算5.6 快速傅里叶变换5.6.1 FFT 问题的背景5.6.2 预备定理5.6.3 快速算法