我的坑
一开始就卡在了思考碰到0怎么办,差点想去回溯【最长距离碰到0就返回前一个数判断能不能跳过】,但想想觉得也太麻烦了就直接看题解了哎。
大佬的想法就是不管三七二十一先遍历下,不断更新能到达的最远距离就是了。【如果碰到跨不过的0这个最远距离就不会再更新了】
var canJump = function(nums) {let cover =0;//一直纠结于0,但就是遍历就完事了if(nums.length ===1) return true//i 小于的是cover,一种剪枝for(let i =0;i<=cover;i++){cover =Math.max(cover,i+nums[i]);//能够到达的最远的地方if(cover>=nums.length-1){//这里是nums.length-1,因为下标从0开始哈。return true;}}return false;};
