Jump Game

给一个数组, 数组上的数都是可以跳的最远距离, 求是否能从左边跳到右边. 这个题是贪婪算法, 我们用一个变量cover记录能到的最远距离, 那么我们只需要关心cover什么时候能超过数组长度即可.

public class Solution {
    public boolean canJump(int[] nums) {
        if(nums.length == 0 || nums == null)
            return false;
        if(nums.length == 1)
            return true;
        int cover = 0;
        
        for(int i =  0 ; i < nums.length && cover >= i; i++) {
            if(cover < nums[i]+i)
                cover = nums[i] + i;
            if(cover >= nums.length-1)
                return true;
        }
        return false;
    }
}