leetcode - 55.Jump Game

    xiaoxiao2021-03-25  72

    Jump Game

    Given an array of non-negative integers, you are initially positioned at the first index of the array.

    Each element in the array represents your maximum jump length at that position.

    Determine if you are able to reach the last index.

    For example:

    A = [2,3,1,1,4], return true.

    A = [3,2,1,0,4], return false.

    Solution1:

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

    Solution2:

    better

    public boolean canJump(int[] nums) { if (nums.length == 1) { return true; } int i = 0; for (int max = 0; i < nums.length && i <= max; ++i) { max = Math.max(max, i + nums[i]); } return i == nums.length; }
    转载请注明原文地址: https://ju.6miu.com/read-40448.html

    最新回复(0)