代码随想录——跳跃游戏Ⅱ(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;
    }
}
相关推荐
dabidai几秒前
JSR-250JavaEE规范
java
Jackson@ML几秒前
2026最新版IntelliJ IDEA安装使用指南
java·ide·intellij-idea
tobias.b5 分钟前
408真题解析-2010-4-数据结构-平衡二叉树插入
数据结构·计算机考研·408真题解析
逍遥德6 分钟前
函数式编程 Java Lambda Stream及其实现类常用函数
java·后端·spring
2501_941982057 分钟前
Java 分布式环境下的 Access_Token 一致性方案:如何避免多节点冲突?
java·开发语言·分布式
历程里程碑15 分钟前
哈希3 : 最长连续序列
java·数据结构·c++·python·算法·leetcode·tornado
闻缺陷则喜何志丹17 分钟前
【图论】P9661 [ICPC 2021 Macao R] Sandpile on Clique|普及+
c++·算法·图论·洛谷
chilavert31818 分钟前
技术演进中的开发沉思-328 JVM:垃圾回收(上)
java·开发语言·jvm
椰羊~王小美22 分钟前
前后端 格式化货币的方法
java·前端
2401_8414956422 分钟前
【LeetCode刷题】两两交换链表中的节点
数据结构·python·算法·leetcode·链表·指针·迭代法