申报城市维护建设税上哪个网站,国外c2c平台有哪几个,wordpress混乱,可以用手机做网站吗给定一个非负整数数组 nums #xff0c;你最初位于数组的 第一个下标 。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
判断你是否能够到达最后一个下标。 示例 1#xff1a; 输入#xff1a;nums [2,3,1,1,4] 输出#xff1a;true 解释#xff1a;可以先跳 1 …给定一个非负整数数组 nums 你最初位于数组的 第一个下标 。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
判断你是否能够到达最后一个下标。 示例 1 输入nums [2,3,1,1,4] 输出true 解释可以先跳 1 步从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。 示例 2 输入nums [3,2,1,0,4] 输出false 解释无论怎样总会到达下标为 3 的位置。但该下标的最大跳跃长度是 0 所以永远不可能到达最后一个下标。 提示 1 nums.length 3 * 0 nums[i] 思路 因为数组为非负整数所以最小的跳跃长度为0 只要数组中不含0那么一定能跳到最后一个下标 若是含0就要判断能不能跳过0这个下标若能则能跳到最后一个下标 若不能则不能到达最后一个下标 bool canJump(int* nums, int numsSize){int left 0, right 0;if(numsSize 1) //判断数组长度为1不用跳动就到了结束return true;for( ; right numsSize; right){ //right用来找0即0的下标left 0; //从开头能否跳到结尾if(0 nums[right]){ //找0for( ; left right; left){ if(right - left nums[left]){ //存在能跨过0的位置break; }else if((right - left nums[left]) right numsSize - 1){ //0在末尾的特殊情况return true;}}if(left right) //有一个0跳不过去return false;}}return true;
}