动态规划笔记

动态规划-理论基础

一、动态规划的常见类型
1.动规基础类题目
入门问题斐波那契数列、爬楼梯这一类
2.背包问题
大厂面试喜欢考的问题
3.打家劫舍
具有三道问题,最后一道是比较经典的树形DP
4.股票问题
经典系列
5.子序列问题
一般是求最长递增子序列、最长连续递增子序列以及经典的编辑距离问题。
二、动态规划的误区
动态规划里面的递推公式仅仅是一部分
没有掌握动态规划本质性的解题步骤。
三、DP数组含义
解决动态规划应该有哪几步必须要思考清楚的:
第一点就要想的是通常我们做状态转移的时候,都会定义一个DP数组。我们要知道DP数组的定义以及下标的含义。需要考虑清楚dp[i][j]中i和j的含义和dp[i]中的含义。
四、递推公式
第二点递推公式确实很重要,但动态规划里递推公式仅仅是一部分
五、DP数组初始化
第三点要想清楚DP数组如何初始化?需要想清楚DP数组的定义及其下标的含义。有的时候DP数组应该初始化成0,有的时候开头初始化为1,有的全都初始化为1,有的是i从1或者2往后再全都初始化成0。
六、遍历顺序
第四点就是遍历顺序,背包类问题上非常考究顺序,在01背包里面有两层for循环一个是遍历背包,一个是遍历物品,先遍历背包,在遍历物品。 两个for循环放了一个递推公式,递推公式反而简单。
七、

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值