佇列(queue)是只允許在⼀端進⾏插⼊操作,⽽在另⼀端進⾏刪除操作的線性表。
佇列是⼀種先進先出的(first in first out)的線性表,簡稱fifo。允許插⼊的⼀端為隊尾,允許刪除的⼀端為隊頭。佇列不允許在中間部位進⾏操作!假設佇列是q=(a1,a2,……,an),那麼a1就是隊頭元素,⽽an是隊尾元素。這樣我們就可以刪除時,總是從a1開始,⽽插⼊時,總是在佇列最後。這也⽐較符合我們通常⽣活中的習慣,排在第⼀個的優先出列,最後來的當然排在隊伍最後。
語法實現:
class queue(object):
"""佇列"""
def __init__(self):
self.items =
def is_empty(self):
return self.items ==
def enqueue(self, item):
"""進佇列"""
self.items.insert(0, item)
def dequeue(self):
"""出佇列"""
return self.items.pop()
def size(self):
"""返回⼤⼩"""
return len(self.items)
if __name__ == "__main__":
q = queue()
q.enqueue("hello")
q.enqueue("world")
q.enqueue("itcast")
print(q.size())
print(q.dequeue())
print(q.dequeue())
print(q.dequeue())
結果:
3
hello
world
itcast
python實現迴圈佇列 迴圈佇列Python
我試圖在python中建立乙個迴圈佇列,以便在到達陣列中的最後乙個元素時指向頭部。我正在研究排隊方法,我遇到了一些問題。我正在嘗試使用乙個大小為4的陣列,並且能夠將值排隊到第4個點,但是當它執行elif語句時,我收到這個錯誤。typeerror 不支援 的運算元型別 node 和 int 有什麼想法...
詳解python中的模組及包匯入 python
python中的匯入關鍵字 import 以及from import 1 import import一般用於匯入包以及模組。不過有個小問題 1 當匯入的是模組的時候是可以直接可以使用模組內的函式以及變數的,比如說 包名為 com.test,在這個包底下有個模組為a.py,那麼當其他包中的模組想要引入...
Python 棧與佇列及雙端佇列
棧 特性 先進後出的資料結構 應用場景 瀏覽器的回退按鈕 佇列特性 先進先出 應用場景 我們的計算機實驗室有30臺電腦與一台印表機聯網.當學生想要列印時,他們的印表機任務與正在 等待的所有其他印表機任務 一致 第一台進出任務的是先完成.如果你是最後乙個.你必須等待你前面的所有其他任務列印 對列的面試...