deque

具有隊列和棧性質的數據結構

deque 即雙端隊列。是一種具有隊列和棧的性質的數據結構。雙端隊列中的元素可以從兩端彈出,相比list增加[]運算符重載

基本含義


deque 即雙端隊列。
(deque,全名double-ended queue)是一種具有隊列和棧的性質的數據結構。雙端隊列中的元素可以從兩端彈出,其限定插入和刪除操作在表的兩端進行。
雙端隊列是限定插入和刪除操作在表的兩端進行的線性表。這兩端分別稱做端點1和端點2。也可像棧一樣,可以用一個鐵道轉軌網路來比喻雙端隊列。在實際使用中,還可以有輸出受限的雙端隊列(即一個端點允許插入和刪除,另一個端點只允許插入的雙端隊列)和輸入受限的雙端隊列(即一個端點允許插入和刪除,另一個端點只允許刪除的雙端隊列)。而如果限定雙端隊列從某個端點插入的元素只能從該端點刪除,則該雙端隊列就蛻變為兩個棧底相鄰的棧了。

優缺點


儘管雙端隊列看起來似乎比棧和隊列更靈活,但實際上在應用程序中遠不及棧和隊列有用。