- 一、题目
- 二、代码
- 三、运行结果
一、题目 二、代码
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;
}
};
三、运行结果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)