第04章 分治策略 — 章节汇总
章节概览
本章是第2章分治法的深化,聚焦于分治策略的两大应用方向——矩阵乘法优化和递归关系式求解。前半部分(4.1
4.2)以矩阵乘法为案例,展示如何通过分治思想将朴素算法的 降低到 ;后半部分(4.34.7)系统介绍三种求解递归关系式的方法——代入法、递归树法和主定理,并给出主定理的严格证明及其推广形式 Akra-Bazzi 方法。
4.1~4.2 矩阵乘法与 Strassen 算法
| 小节 | 核心主题 | 关键结论 |
|---|---|---|
| 4.1 矩阵乘法 | 标准矩阵乘法与分治矩阵乘法 | 朴素算法 ;分治 8 次递归乘法仍为 |
| 4.2 Strassen算法 | Strassen 矩阵乘法 | 仅需 7 次递归乘法,复杂度降至 |
核心思路:将 矩阵划分为 4 个 子矩阵,通过巧妙组合子矩阵的加减运算,将递归乘法次数从 8 次减少到 7 次。虽然每次递归增加了常数次矩阵加减(),但乘法次数的减少在渐近意义上带来了显著提升。
4.3~4.4 递归关系式求解方法(上)
代入法要点:
- 猜测上界时,先减去低阶项(subtract a lower-order term),避免归纳假设过强导致证明失败
- 猜测下界时,先加上低阶项(add a lower-order term)
- 证明过程中可能需要调整常数因子
递归树法要点:
- 每一层的代价求和,形成几何级数
- 适用于 形式的递归
- 树的深度为 ,叶子数为
4.5~4.7 递归关系式求解方法(下)与推广
| 小节 | 核心主题 | 关键结论 |
|---|---|---|
| 4.5 主定理 | 主定理三种情形 | 根据多项式增长比较 与 ,分三种情形求解 |
| 4.6 连续主定理的证明 | 主定理的严格证明 | 利用递归树 + 上下界夹逼,核心引理证明几何级数的收敛性 |
| 4.7 Akra-Bazzi递归 | 广义主定理 | 处理 形式,解由积分给出 |
主定理三种情形(,):
- 情形一:,则 (递归代价主导)
- 情形二:,则 (两代价平衡)
- 情形三: 且满足正则性条件 ,则 (根代价主导)
Akra-Bazzi 方法:当递归中子问题大小不同()时,找到满足 的 ,则 。
跨章节关联
笔记索引
| 小节 | 笔记链接 |
|---|---|
| 4.1 | 4.1 矩阵乘法 |
| 4.2 | 4.2 Strassen算法 |
| 4.3 | 4.3 代入法 |
| 4.4 | 4.4 递归树法 |
| 4.5 | 4.5 主定理 |
| 4.6 | 4.6 连续主定理的证明 |
| 4.7 | 4.7 Akra-Bazzi递归 |