当前位置: 首页> 娱乐> 明星 > 怎么联系软件开发者_免费网站建设免费咨询_推广形式_seo优化策略

怎么联系软件开发者_免费网站建设免费咨询_推广形式_seo优化策略

时间:2025/7/11 8:40:00来源:https://blog.csdn.net/qq_43408590/article/details/143095224 浏览次数:0次
怎么联系软件开发者_免费网站建设免费咨询_推广形式_seo优化策略
动态规划五步:(来自“代码随想录”)
  1. 确定dp数组(dp table)以及下标的含义
  2. 确定递推公式
  3. dp数组如何初始化
  4. 确定遍历顺序
  5. 举例推导dp数组

509. 斐波那契数

题目链接: 力扣题目链接
思路:当前dp就是每个n的对于n-1、n-2的值;递推就是 dp[i] = dp[i-1]+dp[i-2];初始化0和1即可,顺序就是哦从前向后即可。

70. 爬楼梯

题目链接: 力扣题目链接
思路:初始化dp[1] = 1,dp[2] = 2; 递推就是 dp[i] = dp[i-1]+dp[i-2];和斐波那契数列一样。

746. 使用最小花费爬楼梯

题目链接: 力扣题目链接
思路:当前dp每个值是到当前位置最小的花费;递推就是  dp[i]=cost[i]+Math.min(dp[i-1],dp[i-2]);初始化0和1即可,最后返回值是计算n和n-1的最小值,毕竟可以跳两步,所以倒数第二个台阶也是返回值的一部分。(这个是到达位置就会花费)
//到达就会花费
class Solution {public int minCostClimbingStairs(int[] cost) {int[] dp = new int[cost.length] ;dp[0]=cost[0];dp[1]=cost[1];for(int i=2;i<cost.length;i++){dp[i]=cost[i]+Math.min(dp[i-1],dp[i-2]);}return Math.min(dp[cost.length-1],dp[cost.length-2]);}
}
//跳跃才会花费
class Solution {public int minCostClimbingStairs(int[] cost) {int[] dp = new int[cost.length+1] ;dp[0]=0;dp[1]=0;for(int i=2;i<=cost.length;i++){dp[i]=Math.min(dp[i-1]+cost[i-1],dp[i-2]+cost[i-2]);}return dp[cost.length];}
}

以上两个都可以实现目标。

时间:1.5h

关键字:怎么联系软件开发者_免费网站建设免费咨询_推广形式_seo优化策略

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: