55. 跳跃游戏
给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
判断你是否能够到达最后一个下标。
//典型的贪心算法,用来维护能达到的最远值,最远值能到相应节点,那么就返回true
class Solution {
public boolean canJump(int[] nums) {
int len = nums.length;
//能到达的最大值
int maxI = 0;
for(int i=0 ; i < len ; i++){
//保证能到达当前的i
if(i <= maxI){
maxI = Math.max(maxI , i+nums[i]);
if(maxI >= len-1){
return true;
}
}
}
return false;
}
}