public static int jump2(int[] nums) {
int end = 0;
int maxPosition = 0;
int steps = 0;
for(int i = 0; i < nums.length - 1; i++){
//找能跳的最远的
maxPosition = Math.max(maxPosition, nums[i] + i);
if(i == end){ //遇到边界,就更新边界,并且步数加一 // 只要在这个边界范围end内,就一定可以跳跃到最远位置
end = maxPosition;
steps++;
}
}
return steps;
}