给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
判断你是否能够到达最后一个下标。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/jump-game
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
贪心
..其实没明白哪里贪心了
遍历每一个位置,当前可以跳到的最远距离 max。
返回条件:
- 如果最远距离已经到尾部或尾部以后,返回 true
- 如果某个位置已经大于 max,返回 false
- 遍历完成,返回 true
作者:cygra-2
链接:https://leetcode-cn.com/problems/jump-game/solution/qi-shi-mei-ming-bai-na-li-tan-xin-liao-h-paqs/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
/**
* @param {number[]} nums
* @return {boolean}
*/
var canJump = function(nums) {
var max = 0
for (var i = 0; i < nums.length; i ++) {
if (i > max) return false
max = Math.max(max, i + nums[i])
if (max >= nums.length) return true
}
return true
};