一、题目描述
二、解题思路
1.贪心:遍历数组,记录每到达一个位置后下一步可以到达的最远距离(即longest = i + nums[i]),并维护这个最远距离,当longest大于等于数组长度的时候,证明可以到达最后一个位置下标。
三、代码实现
var canJump = function (nums) {
let finish = nums.length, longest = 0
for (let i = 0; i < finish; i++) {
if (i <= longest) {
longest = Math.max(longest, i + nums[i])
if (longest >= finish - 1) {
return true
}
}
}
return false
};