Track max reachable position.
def canJump(nums): farthest = 0
for i in range(len(nums)):
if i > farthest:
return False
farthest = max(farthest, i + nums[i])
return True
time, space.
The approach
Track max reachable position.
def canJump(nums): farthest = 0
for i in range(len(nums)):
if i > farthest:
return False
farthest = max(farthest, i + nums[i])
return True
time, space.