代码随想录——跳跃游戏Ⅱ(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;
    }
}
相关推荐
爱敲代码的TOM1 分钟前
详解一致性哈希算法
算法·哈希算法
lzllzz238 分钟前
递归的理解
算法·深度优先·图论
星火开发设计11 分钟前
C++ stack 全面解析与实战指南
java·数据结构·c++·学习·rpc··知识
宋情写16 分钟前
JavaAI06-SpringAI
java·人工智能
Hello.Reader27 分钟前
Flink Avro Format Java / PyFlink 读写、Schema 细节与坑点总结
java·python·flink
人道领域31 分钟前
【零基础学java】(反射)
java·开发语言
小O的算法实验室31 分钟前
2024年IEEE TITS SCI2区TOP,考虑无人机能耗与时间窗的卡车–无人机协同路径规划,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
派森先生32 分钟前
排序算法-选择排序
算法·排序算法
C雨后彩虹36 分钟前
书籍叠放问题
java·数据结构·算法·华为·面试
小当家.10538 分钟前
从零构建项目认知:如何画出一张合格的系统架构图(以供应链系统为例)
java·spring boot·学习·架构·系统架构·供应链·实习