class Solution {
public:
int jump(vector<int>& nums) {
if(nums.size()==1)return 0;//特判
int l=0,r=0,steps=0;//这题主要还是滚动区间的思想
while(l<=r)//设置左右区间
{
int dis=0;
for(int i=l;i<=r;i++)
dis=max(dis,nums[i]+i);
l=r+1,r=dis;//更新区间
steps++;
if(r>=(int)nums.size()-1)break;
}
return steps;
}
};
leetcode45. 跳跃游戏 II
最新推荐文章于 2024-08-11 12:11:20 发布