0
点赞
收藏
分享

微信扫一扫

算法_贪心算法

生活记录馆 2022-02-19 阅读 85

leetcode55

在这里插入图片描述

class Solution {
    public boolean canJump(int[] nums) {
        
        int maxlen = 0;
        for(int i = 0;i<nums.length;i++){
            
            if(i>maxlen) return false;
            if(maxlen>=nums.length-1) return true;
            maxlen = Math.max(maxlen,i+nums[i]);

        }
        return true;

    }
}

每次跳跃可达到的最大距离为 i+nums[i] 。maxlen表示能到达的最大距离,若最大距离>=数组最后一个位置,直接返回true。循环遍历数组,若当前位置比最大距离大,表示该位置不可达,则直接返回false;

每次都维护最大距离manlen,maxlen=Math.max(maxlen.i+nums[i),使它永远表示可到达的最远位置

举报

相关推荐

0 条评论