55. Jump Game

一、题目

  1、审题

  

  2、分析:

    给一个非负数组,数组值代表在此位置上的最大跳跃的步数。判断是否可以到达数组的末尾。

二、解答

  1、思路:

    采用变量 curMax 代表在 index < i 时能跳跃的最大距离,则当 curMax < i 时代表 无法到达位置 i ,即返回 false;

public boolean canJump(int[] nums) {
    
        int curMax = nums[0];
        for (int i = 1; i < nums.length; i++) {
            if(curMax < i)    //mean we are not able to reach position i
                return false;
            curMax = Math.max(curMax, i+nums[i]);
        }
        return true;
    }
原文地址:https://www.cnblogs.com/skillking/p/9655132.html