写错了 只过了几个用例 不开心 学习一下贪心
java:
class Solution {
public int jump(int[] nums) {
int end = 0;
int step = 0;
int position = 0;
int n = nums.length;
for(int i = 0; i < n - 1; i++){
position = Math.max(position, i + nums[i]);
if(i == end){
end = position;
step++;
}
}
return step;
}
}
python3:
class Solution:
def jump(self, nums: List[int]) -> int:
end = 0
step = 0
position = 0
n = len(nums)
for i in range(n - 1):
if position >= i:
position = max(position, i + nums[i])
if i == end:
end = position
step += 1
return step