做网站和做微商城有什么区别,个人视频制作公司,网站建设需要租赁服务器吗,场景营销题目描述#xff1a; 给你一个非负整数数组 nums #xff0c;你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标#xff0c;如果可以#xff0c;返回 true #xff1b;否则#xff0c;返回 false 。 解… 题目描述 给你一个非负整数数组 nums 你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标如果可以返回 true 否则返回 false 。 解题思路换个方向不纠结具体跳几步而是关注覆盖范围当可以跳跃的覆盖范围等于数组的长度或者下标的最大值说明就可以到达最后一个下标。 注释中有详解~ 代码实现 class Solution {public boolean canJump(int[] nums) {int index nums.length-1;if (index0){// 表示只有一个元素return true;}int range 0;// 初始化 range为0表示目前覆盖的是0for (int i 0; i range; i) {// 注意覆盖范围为 range不是lenrange Math.max(i nums[i], range);// 找到当前覆盖范围里的最大的覆盖范围if (range index){// 注意是 index 不需要-1因为前面已经减过1了已经表示下标了return true;}}return false;}
}