[leetcode] 55. Jump Game (Medium)

时间:2022-11-04 14:31:00

原题

题目意思即 每一格代表你当前最多能再往后跳几次,从第一格开始,如果能跳到最后一格返回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;
};