55. 跳跃游戏
开始想暴力递归, 超时
class Solution {
public:
bool canJump(vector<int>& nums) {
//一步一步走, 如果跳着没有走的快, 肯定过不去
//k是跳着走能够到达的最远的地方
int k = 0;
for(int i = 0;i<nums.size();i++)
{
if (i>k) return false;
//跳
k = max(i + nums[i],k);
}
return true;
}
};
跳是划定范围, 也就是说, 我跳着走是能够过来的, 就算踩到0也不要怕
一步一步走, 如果跳着没有走的快, 肯定过不去