描述
判断从数组的最开始位置,能否移动到最后位置
解决
记录能走到的最大步长,与数组的长度比较即可
class Solution {
public:
bool canJump(vector<int>& nums) {
int i = 0;
int length = nums.size();
int max_length = 0;
while (i == 0 || (i < length && i < max_length))
{
int temp = i + 1 + nums[i];
if (temp >= length)
return true;
if (temp > max_length)
max_length = temp;
++i;
//cout << temp << endl;
}
return false;
}
};