怎样判断是否是动态规划问题
- 有多少种走法
- 求最大最小值
- 是否存在
线性DP
1. 单串
从dp[i-1] 推导出 dp[i]
从dp[0]…dp[i-1] 推导出 dp[i]
最长上升子序列
1 | public int lengthOfLIS(int[] nums) { |
1 | public int maxSubArray(int[] nums) { |
1 | public int rob(int[] nums) { |
从dp[i-1] 推导出 dp[i]
从dp[0]…dp[i-1] 推导出 dp[i]
1 | public int lengthOfLIS(int[] nums) { |
1 | public int maxSubArray(int[] nums) { |
1 | public int rob(int[] nums) { |