学习笔记 动态规划 DP 拆解问题为子问题,根据子问题的解得到原问题的解 会跳过重复的子问题,每个子问题仅处理一次(缓存结果,后续遇到直接查表) 分治 + 最优子结构 与分治 递归 比较 无根本上的区别 关键在于是否有最优子结构 共性 找到重复子问题 差异性 最优子结构 中途回去淘汰不优的解 关键点 寻找最优子结构 储存中间状态 推出递推公式 五步DP 定义子问题 分治处理 假设(猜)出 递推公式 合并子问题的解 (递归 & 记忆化) || 建立状态表 解决原问题