首頁 >後端開發 >Python教學 >Python 的「collections.deque」如何最佳化清單輪替?

Python 的「collections.deque」如何最佳化清單輪替?

Susan Sarandon
Susan Sarandon原創
2024-12-16 22:39:13924瀏覽

How Can Python's `collections.deque` Optimize List Rotation?

Python 中的高效列表旋轉:另一種方法

提供的Python 程式碼透過切片和組合其部分來有效地旋轉列表。然而,有一個更優化的解決方案,使用 collections.deque。

利用 deque 的 Rotate 方法

deque 是一種為兩端高效插入和刪除而設計的資料結構。它提供了一個專用的rotate()方法來旋轉其元素。這種方法對於大型清單特別有利。

from collections import deque

items = deque([1, 2])
items.append(3)        # deque == [1, 2, 3]
items.rotate(1)        # deque == [3, 1, 2]
items.rotate(-1)       # Returns deque to original state: [1, 2, 3]
item = items.popleft() # deque == [2, 3]

在上面的範例中:

  • 使用append()將項目加入雙端佇列。
  • 旋轉(1) 將雙端隊列向右旋轉一位(順時針)。
  • rotate(-1) 將其旋轉一位向左(逆時針)。
  • popleft() 與rotate() 一樣,可以有效地從左端刪除元素。

以上是Python 的「collections.deque」如何最佳化清單輪替?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn