# 动态规划学习路线
# 专题特点
动态规划专题从基础状态转移开始,系统学习背包、打家劫舍、股票、子序列和回文问题。
# 核心方法
坚持推导五步:状态含义、递推公式、初始化、遍历顺序和手工模拟。
# 如何学习
不要从背递推公式开始。先定义 dp 数组每个下标的含义,再推导状态从哪里来。背包问题要对照一维和二维写法,理解遍历顺序为什么不同。
建议按照下面的顺序学习。第一遍先理解思路并独立写出代码,第二遍再对照题解复盘边界条件和复杂度。
# 学习顺序
- 动态规划理论基础
- 斐波那契数
- 爬楼梯
- 使用最小花费爬楼梯
- 动规周总结
- 不同路径
- 不同路径II
- 整数拆分
- 不同的二叉搜索树
- 动规周总结
- 0-1背包理论基础(一)
- 0-1背包理论基础(二)
- 分割等和子集
- 最后一块石头的重量II
- 动规周总结
- 目标和
- 一和零
- 完全背包理论基础
- 零钱兑换II
- 动规周总结
- 组合总和Ⅳ
- 爬楼梯(进阶版)
- 零钱兑换
- 完全平方数
- 动规周总结
- 单词拆分
- 多重背包理论基础
- 背包问题总结篇
- 打家劫舍
- 打家劫舍II
- 打家劫舍III
- 买卖股票的最佳时机
- 动规周总结
- 买卖股票的最佳时机II
- 买卖股票的最佳时机III
- 买卖股票的最佳时机IV
- 最佳买卖股票时机含冷冻期
- 动规周总结
- 买卖股票的最佳时机含手续费
- 股票问题总结篇
- 最长上升子序列
- 最长连续递增序列
- 最长重复子数组
- 最长公共子序列
- 不相交的线
- 最大子序和
- 判断子序列
- 不同的子序列
- 两个字符串的删除操作
- 编辑距离
- 编辑距离总结篇
- 回文子串
- 最长回文子序列
- 动态规划总结篇
# 学习建议
每完成一道题,先关掉题解,用自己的话说出核心思路,再写一遍代码。如果无法解释某个边界或遍历顺序,说明这道题还需要再模拟一遍。
@2021-2026 代码随想录 版权所有
粤ICP备19156078号
评论
验证登录状态...