代码随想录——跳跃游戏Ⅱ(Leetcode 45)

题目链接

贪心

java 复制代码
class Solution {
    public int jump(int[] nums) {
        if(nums.length == 1){
            return 0;
        }
        int count = 0;
        // 当前覆盖最远距离下标
        int curDistance = 0;
        // 下一步覆盖距离最远下标
        int nextDistance = 0;
        for(int i = 0; i <= nums.length; i++){
            nextDistance = Math.max(nums[i] + i, nextDistance);
            // 遇到当前覆盖最远距离下标
            if(i == curDistance){
                count++;
                // 更新当前覆盖最远距离下标
                curDistance = nextDistance;
                if(nextDistance >= nums.length - 1){
                    break;
                }
            }
        }
        return count;
    }
}
相关推荐
okseekw3 分钟前
File类:你与文件的"爱恨情仇"——Java文件操作的趣味指南
java·后端
梨落秋霜5 分钟前
Python入门篇【if判断语句】
android·java·python
萝卜白菜。5 分钟前
关于maxPartCount和maxPartHeaderSize参数的限制说明
java·tomcat
宝贝儿好6 分钟前
【强化学习】第二章:老虎机问题、ε-greedy算法、指数移动平均
人工智能·python·算法
CoovallyAIHub9 分钟前
超越深度学习:量子优化如何通过算法与硬件重塑AI
深度学习·算法·计算机视觉
Li_7695329 分钟前
Spring Cloud —— SkyWalking(五)
java·后端·spring·spring cloud·skywalking
嘟嘟w10 分钟前
Forward(转发)与Redirect(重定向)的区别
java
mit6.82411 分钟前
模拟|str_dp
算法
程序员根根13 分钟前
JavaSE 进阶:代理设计模式核心知识点(静态代理 + 动态代理 + 反射实现 + 实战案例)
java
武子康13 分钟前
Java-189 Guava Cache 源码剖析:LocalCache、Segment 与 LoadingCache 工作原理全解析
java·redis·后端·spring·缓存·guava·guava cache