55. Jump Game
class Solution:
def canJump(self, nums: List[int]) -> bool:
def traverse(i):
if i == len(nums) - 1:
return True
farestPosition = min(i + nums[i] + 1, len(nums))
for j in range(i+1, farestPosition):
if traverse(j):
return True
return False
return traverse(0)class Solution:
def canJump(self, nums: List[int]) -> bool:
def traverse(i):
if i == len(nums) - 1:
return True
farestPosition = min(i + nums[i] + 1, len(nums))
for j in reversed(range(i+1, farestPosition)):
if traverse(j):
return True
return False
return traverse(0)動態規劃
Last updated