爬楼梯的最少成本java实现

爬楼梯的最少成本java实现,第1张

爬楼梯的最少成本java实现
class Solution {
    public int minCostClimbingStairs(int[] cost) {
        //两个辅助变量用于做滑动窗口,初始值为第0个台阶和第一个台阶的成本
        int i = cost[0];
        int j = cost[1];
        //当index为双数时复制给i,表示i是下一个台阶的成本,当index为单数数是赋值给j代表j是下一个双数锁需要的成本
        for(int index = 2;index < cost.length;index++){
            if(index % 2 == 0){
                i = Math.min(i,j) + cost[index];
            }else{
                j = Math.min(i,j) + cost[index];
            }
        }
        //最终的ij分别指向的是本台阶前一个台阶的成本和前两个台阶的成本
        return Math.min(i,j);
    }
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5612768.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存