LeetCode 45 Jump Game II - Implementation

The approach

Greedy level-by-level jumping.

def jump(nums): jumps = 0 currentEnd = 0 farthest = 0

for i in range(len(nums) - 1):
    farthest = max(farthest, i + nums[i])
    if i == currentEnd:
        jumps += 1
        currentEnd = farthest

return jumps

O(n)O(n) time, O(1)O(1) space.