MENU

LeetCode55. 跳跃游戏

July 5, 2018 • Read: 255 • LeetCode

image
首先创建一个index数组,存储当前位置最大可达的数组下标,就以样例1来举例,输入是[2,3,1,1,4],那么对应的这个index数组就是[2,4,3,4,8]

定义一个变量jump,表示当前走到的下标,jump从0开始

class Solution {
public:
    bool canJump(vector<int>& nums) {
        vector<int> index;//最远可达位置
        for(int i = 0;i < nums.size();i++)
            index.push_back(i + nums[i]);
        int jump = 0;
        int max_index = index[0];
        while(jump < index.size() && jump <= max_index){
            if(max_index < index[jump])
                max_index = index[jump];
            jump++;
        }
        if(jump == index.size())
            return true;
        return false;
    }
};
最后编辑于: October 10, 2018
Archives Tip
QR Code for this page
Tipping QR Code