题目:
解答:
一次遍历,寻找最大值,如果最大跳跃值小于index,则证明不能跳跃到当前位置,返回false
代码:
class Solution {
public:
bool canJump(vector<int>& nums) {
int len = nums.size();
int maxjump = 0;
for(int i = 0;i < len; ++i){
if(maxjump < i)
return false;
if(i + nums[i] >= len - 1)
return true;
int index = i + nums[i];
if(index > maxjump)
maxjump = index;
}
return true;
}
};
更新会同步在我的网站更新(https://zergzerg.cn/notes/webnotes/leetcode/index.html)