20191027-leetcode-55跳躍遊戲(思維)

在這裏插入圖片描述
分析:從前向後遍歷nums數組,index記錄從當前位置,以及當前以前位置跳,最多能跳多遠。如果遍歷到一個nums[i]==0nums[i]==0的地方,倘若當前index不能大於i,證明不可能跳過這個地方。

class Solution {
public:
    bool canJump(vector<int>& nums) 
    {
        int index=0;
        for(int i=0;i<nums.size();i++)
        {
            if(index>=nums.size()-1) return true;
            if(nums[i]==0)
            {
                if(index>i) continue;
                else return false;
            }
            index=max(index,nums[i]+i);
        }
        if(index>=nums.size()-1) return true;
        else return false;
    }
};
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章