一般实际生活中我们遇到的算法分为四类:
而今天所要总结的算法就是着重解决 “最优化问题”
《算法之道》对三种算法进行了归纳总结,如下表所示:
| 标准分治 | 动态规划 | 贪心算法 |
适用类型 | 通用问题 | 优化问题 | 优化问题 |
子问题结构 | 每个子问题不同 | 很多子问题重复(不独立) | 只有一个子问题 |
最优子结构 | 不需要 | 必须满足 | 必须满足 |
子问题数 | 全部子问题 都要解决 | 全部子问题 都要解决 | 只要解决 一个子问题 |
子问题 在最优解里 | 全部 | 部分 | 部分 |
选择与求解次序 | 先选择 后解决子问题 | 先解决子问题 后选择 | 先选择 后解决子问题 |
分治算法特征:
【一】动态规划: