LC 55跳跃游戏Jump Game 中等
数组每个元素表示在该位置最多能跳的距离,判断能否从起点到达最后一个下标。
思路 贪心维护最远可达位置 mx,若当前下标 i > mx 则不可达;扫完即可达。时间 O(n)。
class Solution:
def canJump(self, nums: List[int]) -> bool:
mx = 0
for i, x in enumerate(nums):
if i > mx:
return False
mx = max(mx, i + x)
return True