代码随想录——跳跃游戏Ⅱ(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;
    }
}
相关推荐
东阳马生架构4 分钟前
订单初版—5.售后退货链路中的技术问题说明文档
java
小小寂寞的城9 分钟前
JAVA策略模式demo【设计模式系列】
java·设计模式·策略模式
JAVA学习通26 分钟前
图书管理系统(完结版)
java·开发语言
蒟蒻小袁31 分钟前
力扣面试150题--全排列
算法·leetcode·面试
abigalexy33 分钟前
深入Java锁机制
java
paishishaba33 分钟前
处理Web请求路径参数
java·开发语言·后端
神仙别闹35 分钟前
基于Java+MySQL实现(Web)可扩展的程序在线评测系统
java·前端·mysql
田野追逐星光36 分钟前
堆的应用(讲解超详细)
数据结构
程序无bug37 分钟前
Java中的8中基本数据类型转换
java·后端
mit6.8241 小时前
[Backlog] 核心协调器 | 终端用户界面(TUI)实现 | 多分支任务冲突解决 | 测试验证体系
人工智能·算法