746使用最小花费爬楼梯

- List item

1.确定数组和下标含义

数组是累计消耗,也就是当前时刻的最小消耗。建立的动态数组一般都是和文本中心思想密切相关
下标是在第几个台阶,也就是那个时刻

2.确定递推公式

这里涉及到了最小,那么就是min
由于一次跨进两步或者一步,这里当前时刻最小消耗由前一步或两步最小消耗(加上跨出这步的消耗(cost数组值)),取最小值作为当前时刻最小消耗
min(dp[i-1]+cost[i-1],dp[i-2]+cost[i-2])

3.确定初始值

前两个时刻的消耗,从0加上他们本身得到,所以这个时刻的dp数组值和cost相同,初始值一般都是第一个时刻的值 dp[2]=0 以及dp[1]=0

4.确定递推顺序

根据递推公式可以知道当前时刻依赖之前时刻的值,那就从前向后遍历

5.打印dp值并模拟

这道题,最开始把dp数组dp[2]=0 以及dp[1]=0,错误赋值成了cost[0]和cost[1]这是不对的,严格遵循前一个时刻最小消耗加上当前时刻消耗,这两步是从0时刻来的,没有消耗,所以是0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值