用Python跳游戏

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

让我们看看步骤-

  • n:=数组A的长度– 1

  • 对于i:= n – 1,降至-1

    • 如果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