代码随想录——跳跃游戏Ⅱ(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;
    }
}
相关推荐
乐之者v3 分钟前
软件开发常规流程的版本缩写
java
DN20204 分钟前
靠谱的AI销售机器人哪家好
java·人工智能·机器人
黎雁·泠崖10 分钟前
Java继承细节:子类继承父类成员的底层逻辑
java·开发语言
你撅嘴真丑10 分钟前
计算2的N次方 和 大整数的因子
数据结构·c++·算法
冷雨夜中漫步13 分钟前
Java中strip与trim()的区别
java·开发语言
孞㐑¥14 分钟前
算法—前缀和
c++·经验分享·笔记·算法
heartbeat..18 分钟前
Redis 常用命令全解析:基础、进阶与场景化实战
java·数据库·redis·缓存
让我上个超影吧19 分钟前
天机学堂——多级缓存
java·spring boot·spring cloud
yugi98783830 分钟前
基于MATLAB的延迟求和(DAS)波束形成算法实现
开发语言·算法·matlab
Yvonne爱编码33 分钟前
Java 接口学习核心难点深度解析
java·开发语言·python