1. 程式人生 > >python collection 中的佇列

python collection 中的佇列

認識中的佇列

  在以前的認知裡,佇列是先進先出,就是一頭進,一頭出,Queue。而無意間看到了deque 雙向佇列。

即從該佇列的頭或者尾部都能插入和移除元素。而起時間複雜度竟然是一樣的!O(1),是不是想起了和列表

有點像,但列表從尾部和頭部刪除或插入的時間複雜度可差別很大的。但還是有點相像。

雙向列表的屬性和方法

rom collections import deque
#例項化一個deque佇列
d=deque()
#list
list_obj = list()
print(d)
#從右邊插入資料
d.append("yang")
list_obj.append("yang
") #add one record from left d.appendleft("zhang") print(d) # for item in d: print(item) #the len print("the len of duque is {}".format(len(d))) #pop one from right d.pop() print(d) d.append("yang") #pop item from left d.popleft() d.appendleft("zhang") #雙向佇列中元素"zhang"的個數 print(d.count("zhang"))
#佇列d右邊擴充套件多個元素 d.extend("test") # d.extendleft("left") #預設向右旋轉,步長為1, 如果步長為-1則向左旋轉 d.rotate() print(d)