Python 中的跳躍遊戲


假設我們有一個非負整陣列成的陣列;我們最初位於陣列的第一位。給定陣列中的每個元素表示我們在該位置的最大跳躍距離。我們必須確定是否能夠到達最後一位。所以如果陣列像 [2,3,1,1,4],則輸出將為真。這就像從位置 0 跳到 1,然後從位置 1 跳到最後。

讓我們看下步驟 −

  • n := 陣列 A 的長度 – 1
  • 對於 i := n – 1,降至 -1
    • 如果 A[i] + i > n,則 n := i
  • 當 n = 0 時返回真,否則返回假

讓我們以下面的實現來獲得更好的理解 −

示例

 動態示例

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

更新於: 04-5 月 -2020

3K+ 觀看次數

開啟您的職業生涯

完成本課程即可獲得認證

開始
廣告