python佇列原理及實現方法示例
阿新 • • 發佈:2020-01-09
本文例項講述了python佇列原理及實現方法。分享給大家供大家參考,具體如下:
佇列(queue)是隻允許在一端進行插入操作,而在另一端進行刪除操作的線性表。
佇列是一種先進先出的(First In First Out)的線性表,簡稱FIFO。允許插入的一端為隊尾,允許刪除的一端為隊頭。佇列不允許在中間部位進行操作!假設佇列是q=(a1,a2,……,an),那麼a1就是隊頭元素,而an是隊尾元素。這樣我們就可以刪除時,總是從a1開始,而插入時,總是在佇列最後。這也比較符合我們通常生活中的習慣,排在第一個的優先出列,最後來的當然排在隊伍最後。
佇列的實現
同棧一樣,佇列也可以用順序表或者連結串列實現。
操作
- Queue() 建立一個空的佇列
- enqueue(item) 往佇列中新增一個item元素
- dequeue() 從佇列頭部刪除一個元素
- is_empty() 判斷一個佇列是否為空
- size() 返回佇列的大小
示例
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()
更多關於Python相關內容感興趣的讀者可檢視本站專題:《Python資料結構與演算法教程》、《Python加密解密演算法與技巧總結》、《Python編碼操作技巧總結》、《Python函式使用技巧總結》、《Python字串操作技巧彙總》及《Python入門與進階經典教程》
希望本文所述對大家Python程式設計有所幫助。