Python隊列
當等待一項服務時,對日常生活中的排隊很熟悉。 隊列數據結構同樣意味着數據元素排列在一個隊列中。 隊列的唯一性在於項目添加和刪除的方式。 這些對象可以放在最後,但從另一端移除。 所以這是先進先出的方法。 可以使用python list實現隊列,可以使用insert()
和pop()
方法添加和移除元素。它們沒有插入,因爲數據元素總是添加在隊列的末尾。
將元素添加到隊列
在下面的例子中,我們創建了一個隊列類,實現了先進先出方法。 使用內置的insert()
方法來添加數據元素。
class Queue:
def __init__(self):
self.queue = list()
def addtoq(self,dataval):
# Insert method to add element
if dataval not in self.queue:
self.queue.insert(0,dataval)
return True
return False
def size(self):
return len(self.queue)
TheQueue = Queue()
TheQueue.addtoq("Mon")
TheQueue.addtoq("Tue")
TheQueue.addtoq("Wed")
print(TheQueue.size())
執行上面示例代碼,得到以下結果 -
3
從隊列中移除元素
在下面的例子中,我們創建了一個插入數據的隊列類,然後使用內置的pop
方法刪除數據。參考以下代碼實現 -
class Queue:
def __init__(self):
self.queue = list()
def addtoq(self,dataval):
# Insert method to add element
if dataval not in self.queue:
self.queue.insert(0,dataval)
return True
return False
# Pop method to remove element
def removefromq(self):
if len(self.queue)>0:
return self.queue.pop()
return ("No elements in Queue!")
TheQueue = Queue()
TheQueue.addtoq("Mon")
TheQueue.addtoq("Tue")
TheQueue.addtoq("Wed")
print(TheQueue.removefromq())
print(TheQueue.removefromq())
當上面的代碼被執行時,它會產生以下結果 -
Mon
Tue