[leetcode] 55. Jump Game (Medium)

版权声明:by ruohua3kou https://blog.csdn.net/ruohua3kou/article/details/83028084

原题
题目意思即 每一格代表你当前最多能再往后跳几次,从第一格开始,如果能跳到最后一格返回true,反之为false。
思路:用一个下标记录当前最多能跳到哪一格,遍历一遍 ——> 如果当前格子不在可以跳到的范围内,则跳出遍历 ——> 如果最多能跳到格子长度大于数组长度,则为true;

/**
 * @param {number[]} nums
 * @return {boolean}
 */
var canJump = function(nums) {
    var rightIndex = 1;
    for (let i = 0; i < nums.length; i++) {
        if (rightIndex<i+1) {
            break;
        }
        rightIndex=Math.max(rightIndex,i+nums[i]+1);
    }
    return rightIndex>=nums.length;
};

猜你喜欢

转载自blog.csdn.net/ruohua3kou/article/details/83028084