最小跳跃次数,记录每一跳的最大距离,每次达到这个距离,跳跃次数加1,进行最大距离的更新。直至最大的跳跃距离大于数组的长度。
class Solution: def jump(self, nums: List[int]) -> int: result=0 start=0 end=1 while end<len(nums): maxpos=0 for i in range(start,end): maxpos=max(maxpos,i+nums[i]) start=end end=maxpos+1 result+=1 return result