力扣刷题记录79.1-----55. 跳跃游戏

力扣刷题记录79.1-----55. 跳跃游戏,第1张

目录
  • 一、题目
  • 二、代码
  • 三、运行结果


一、题目

二、代码
class Solution 
{
public:
    bool canJump(vector<int>& nums) 
    {
       int i,j;
       bool return_bool=0;
       int the_need_of_all_step=0;
       
       the_need_of_all_step=nums.size()-1;    //nums.size()-1是 最后的一个下标值
        
       //std::cout<<"the_need_of_all_step   "<
       int now_index=0;
       int temp_max=0;
       int temp_num=0;
       int increase_index=0;
       int last_index=0;
       while(now_index<nums.size()-1)
       {
            temp_max=0;
            increase_index=0;
            for(i=now_index+1;i<nums.size()&&i<now_index+nums[now_index]+1;i++)
            {
                temp_num=i-now_index+nums[i];
                if(temp_num>temp_max) 
                {
                    temp_max=temp_num;
                    increase_index=i-now_index;
                }
            }
            now_index=now_index+increase_index;
            if(now_index==last_index||now_index>=nums.size()-1) break;    //停止 或者走到尽头 退出
            last_index=now_index;
       }
        
       if(now_index<nums.size()-1) return_bool=0;
       else return_bool=1;

       return return_bool;
    }
};
三、运行结果

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/3002759.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-27
下一篇 2022-09-27

发表评论

登录后才能评论

评论列表(0条)

保存