目录

跳跃游戏-leetcode-55

跳跃游戏 (leetcode 55

leetcode系列


  1. 建立for循环,注意终止条件是小于等于reach
  2. 判断reach和i+nums[ i ]谁大,取大的数,通过这样来延长可到达的范围
  3. 如果reach大于等于最后一个数的下标,则说明可以到达

提示:小白个人理解,如有错误敬请谅解!

  1. 如果只有一个数字,那就是可以到达

代码如下:

class Solution {
public:
    bool canJump(vector<int>& nums) {
        if(nums.size()==1)return true;
        int reach;
        for(int i=0;i<=reach;i++)
        {
            reach=(i+nums[i])>reach?(i+nums[i]):reach;
            if(reach>=nums.size()-1)return true;
        }
        return false;
    }
};

  1. 一定要记得循环终止条件是小于等于reach!!