当前位置: 首页 > wzjs >正文

免费手机建网站平台谷歌seo优化中文章

免费手机建网站平台,谷歌seo优化中文章,网站开发思路,汉中专业网站建设推广动态规划解最小花费爬楼梯问题:LeetCode 746. 使用最小花费爬楼梯 1. 题目链接 LeetCode 746. 使用最小花费爬楼梯 题目要求:给定一个整数数组 cost,其中 cost[i] 是从楼梯第 i 阶向上爬所需支付的费用。你可以从下标 0 或 1 的台阶开始爬&a…

动态规划解最小花费爬楼梯问题:LeetCode 746. 使用最小花费爬楼梯


1. 题目链接

LeetCode 746. 使用最小花费爬楼梯
题目要求:给定一个整数数组 cost,其中 cost[i] 是从楼梯第 i 阶向上爬所需支付的费用。你可以从下标 01 的台阶开始爬,每次爬1或2阶,计算达到楼梯顶部(数组末尾之后)的最小花费。


2. 题目描述
  • 输入:整数数组 cost,例如 [10, 15, 20]
  • 输出:最小花费,例如 15(从下标1开始,直接走两步到达顶部)。
  • 约束条件
    • 2 ≤ cost.length ≤ 1000
    • 0 ≤ cost[i] ≤ 999

3. 示例分析

示例 1
输入:cost = [10, 15, 20]
输出:15
解释

  • 从下标1开始,支付15,走两步直接到达顶部,总花费为15。

示例 2
输入:cost = [1, 100, 1, 1, 1, 100, 1, 1, 100, 1]
输出:6
解释

  • 路径为 0→2→4→6→7→9→顶部,总花费为 1+1+1+1+1+1=6

4. 算法思路
动态规划递推
  1. 状态定义

    • dp[i] 表示到达第 i 阶的最小累计花费。
    • 注意:顶部位于第 n 阶(n = cost.size()),因此需要计算 dp[n]
  2. 状态转移方程

    • 到达第 i 阶的最小花费由前两阶的花费决定:
      dp[i] = min(dp[i-1] + cost[i-1], dp[i-2] + cost[i-2])
    • 解释:可以从第 i-1 阶走1步,或从第 i-2 阶走2步到达第 i 阶。
  3. 初始条件

    • dp[0] = 0(从起点开始,无需站在下标0的台阶)。
    • dp[1] = 0(从起点开始,直接选择下标1的台阶,无需支付下标1的费用)。

5. 边界条件与注意事项
  1. 边界处理

    • cost 数组长度为 1 时,直接返回 0(无需支付任何费用即可到达顶部)。
    • 当长度为 2 时,返回 min(cost[0], cost[1])
  2. 时间复杂度O(n),只需遍历一次数组。

  3. 空间优化:可进一步优化为滚动变量,将空间复杂度从 O(n) 降至 O(1)


6. 代码实现与解析
class Solution {
public:int minCostClimbingStairs(vector<int>& cost) {int n = cost.size();if (n == 0) return 0;    // 处理空数组(题目约束n≥2,实际无需)if (n == 1) return 0;     // 关键修正:避免越界vector<int> dp(n + 1, 0); // dp[i]表示到达第i阶的最小花费for (int i = 2; i <= n; i++) {dp[i] = min(dp[i-1] + cost[i-1], dp[i-2] + cost[i-2]);}return dp[n];}
};
代码解析
  1. 初始化处理
    • 直接处理 n=0n=1 的情况,避免越界错误。
  2. 动态规划数组
    • dp[0]dp[1] 初始化为 0,因为从起点可以选择直接站在下标0或1的位置。
  3. 递推计算
    • i=2 开始,计算到达每阶的最小花费,确保每次取最小值。
  4. 返回值
    • dp[n] 表示到达顶部(第 n 阶之后)的最小花费。

总结

通过动态规划递推能够高效解决最小花费爬楼梯问题。关键点在于正确处理边界条件(如 n=1)和状态转移逻辑。此方法可扩展至类似路径选择问题,如带权重的跳跃游戏等。

http://www.dtcms.com/wzjs/615935.html

相关文章:

  • 南通做外贸的公司网站代理网址设置
  • 哪个国家的绘本网站做的好广州 营销型网站
  • 做招聘网站赚钱么优普道建筑网校
  • 自助网站免费注册如何写一个自己的网站
  • 潍坊做企业手机版网站电子商务论文5000字
  • 如何做网站方案游戏ui素材网站
  • 建个小型网站服务器男女做暧昧视频网站
  • 汉沽做网站软件开发项目管理办法
  • 衡阳购物网站开发案例高端模板网站建设价格
  • 有没有专门做艺术的网站网站如何在google提交收录
  • 企业网站建设栏目结构图浙江网站建设企业
  • 做夜场网站网站建设公司计划书
  • 中文网站建设中项目管理网络图
  • 卖水果网站模板海淘网站建设的目的
  • ps可以做网站动态图荣耀手机官方官网
  • 企业网站管理系统多少钱一年用vue做的网站怎么实现响应式
  • 海口室内设计公司排名南宁网站优化推广
  • 下列关于网站开发中网页网站开源
  • 网站建设佰金手指科杰二九企业网站数据库
  • 男女做暧暧试看网站49专业上海网站建设
  • .net 大型网站开发顺德网站
  • 抽奖网站怎么做免费平台发布销售信息
  • 网站策划方案钢板出租铺路钢板出租
  • 怎样网站seowordpress设置客户端缓存时间
  • 杭州网站基建做网站思路
  • 无锡大型网站建设公司公司网站建设找哪家
  • 怎么模仿网站做ppt汕头seo外包
  • 海南省建设注册中心网站广州小程序开发多少钱
  • 建设银行网站怎么登录密码忘了怎么办想学习网站建设
  • wordpress 做外贸站网站建设系统多少钱