代码随想录——跳跃游戏Ⅱ(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;
    }
}
相关推荐
鱼鳞_13 小时前
Java学习笔记_Day33(高级流)
java·笔记·学习
say_fall13 小时前
深入理解AVL树:平衡调整机制与性能优化实战
开发语言·数据结构·c++·学习
帅小伙―苏13 小时前
力扣128.最长连续序列
算法·leetcode
Pkmer13 小时前
Java古法入门到精通
java
2501_9130613414 小时前
网络编程——了解客户端与服务器端之间的交互(1)
java·网络
tumeng071114 小时前
springboot与springcloud对应版本
java·spring boot·spring cloud
tankeven14 小时前
HJ180 游游的最长稳定子数组
c++·算法
Moe48814 小时前
Spring AI(1.1.0):消息元数据
java·后端·面试
老涵coding14 小时前
测试博客111
java
aXin_ya14 小时前
微服务 第三天
java·微服务·架构