内容摘要
主要介绍我对本书的一些自我感觉比较亮点地方的总结。
第一章
算法
算法特性

时间复杂度

常见算法时间复杂度
时间复杂度的渐进上界

渐进精确界
用渐进上界和渐进下界逼近,
空间复杂度

递归
- 递归包括递推和回归。
- 递推是将原问题不断分解成子问题,直到达到结束条件,返回最近子问题的解;然后逆向逐一回归,最终到达递推开始的原问题,返回原问题的解。
栈
后进先出。
数学知识
斐波那契数列

斐波那契数列和黄金分割比的关系:

第二章
贪心算法

贪心算法特性
贪心选择性质
- 原问题的整体最优解可以通过一系列局部最优解的选择得到。
- 原问题变为一个相似的但规模更小的子问题,而后的每一步都是当前最佳的选择。
- 选择依赖于已做出的选择,但不依赖于未作出的选择。
- 程序的运行过程中无回溯过程。
最优子结构性质
一个问题的最优解包含其子问题的最优解。
贪心算法案例
冒泡排序采用了贪心算法。
背包问题

创建栈

正态分布
大部分数据呈现正态分布,因此遍历是不合理的。
最小生成树
避圈法
Kruskal算法和Prim算法

第三章
快速排序(sort)
快排原理
向左走、向右走,直到重合,重复此过程。
快排特点
排序复杂度

合并排序(归并排序)
合并排序特点
- 分解容易,合并难。
- 先易后难。
- 需要辅助空间(辅助数组),异地排序。
排序算法效率

大整数乘法
时间复杂度

空间复杂度

四次乘法变三次乘法

时间复杂度变化

注意事项

第四章
动态规划
最优子结构

子问题重叠

如何使用动态规划


编辑距离

构造最优解

二叉搜索树

最优二叉搜索树

最优二叉树的最优值递归式(动态规划的查表法)

搜索成本(平均比较次数)

- 关键字结点的搜索成本

- 每个实结点的搜索成本=结点的深度*搜索概率。
- 虚结点的搜索成本

- 每个虚结点的搜索成本=结点的深度*搜索概率。
搜索概率

第五章
回溯法
隐约束(剪枝函数)
约束函数和限界函数
时间复杂度
n皇后
- 以行为主导


最优加工顺序

贝尔曼规则

第六章
贪心策略对购物车问题的缺陷

队列
此类问题可以用队列(先近先出)解决
回溯法与分支限界法

第七章
线性规划
处理线性规划问题

单纯形表
特殊位置

单纯形算法
将目标函数由非基本变量表示
最大网络流

可行流
残余网络

附录F
四边不等式

本书免费访问路径
-
https://gateway.pinata.cloud/ipfs/bafykbzaceauicbfg6xaw22pjmb7p75u4qrwiu77c4kgqwwy2gpwcvnr3v3ea4?filename=%E8%B6%A3%E5%AD%A6%E7%AE%97%E6%B3%95.pdf
-
https://www.cnblogs.com/aerer/p/9931040.html