Python 中的跳跃游戏

pythonserver side programmingprogramming更新于 2025/11/18 23:08:17

假设我们有一个非负整数数组;我们最初位于数组的第一个索引处。给定数组中的每个元素代表我们在该位置的最大跳跃长度。我们必须确定我们是否能够到达最后一个索引。因此,如果数组为 [2,3,1,1,4],则输出将为 true。这就像从位置 0 跳到 1 一步,然后从位置 1 跳到末尾三步。

让我们看看步骤 −

  • n := 数组 A 的长度 – 1
  • for i := n – 1, down to -1
    • if A[i] + i > n,则 n := i
  • 当 n = 0 时返回 true,否则返回 false

让我们看看下面的实现以便更好地理解 −

示例

class Solution(object):
   def canJump(self, nums):
      n = len(nums)-1
      for i in range(n-1,-1,-1):
         if nums[i] + i>=n:
            n = i
      return n ==0
ob1 = Solution()
print(ob1.canJump([2,3,1,1,4]))

输入

[2,3,1,1,4]

输出

True

相关文章


有用资源