代码随想录——跳跃游戏Ⅱ(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;
    }
}
相关推荐
就叫_这个吧5 分钟前
理解Java反射机制和内省机制应用与实践
java·开发语言·反射
仍然.15 分钟前
算法题目---优先级队列
算法
一个爱编程的人17 分钟前
图的相关概念
c++·算法·图论
迈巴赫车主18 分钟前
贪心算法
算法·贪心算法
未若君雅裁25 分钟前
synchronized 底层原理:Monitor、对象头、Mark Word 与锁升级
java
星马梦缘32 分钟前
死锁与进程资源分配问题的解法
算法·操作系统·深度优先·死锁
m0_7520356335 分钟前
markdown语言格式
java
布朗克16835 分钟前
12 封装与构造方法
java·开发语言·封装·构造方法
仙俊红35 分钟前
线程池面试
python·面试·职场和发展
爱炼丹的James37 分钟前
第四章 数学知识
算法