推出一個新系列,《看圖輕鬆理解數據結構和算法》,主要使用圖片來描述常見的數據結構和算法,輕鬆閱讀並理解掌握。本系列包括各類堆、各類隊列、各類列表、各類樹、各類圖、各類排序等等幾十篇的樣子。前端
隊列(queue)是一種運算受限的線性表,經過該線性表存儲的元素具備順序性。它的插入操做只被容許在表的後端,而刪除操做只被容許在表的前端。進行插入操做的端稱爲隊尾,而進行刪除操做的端則稱爲隊頭。mysql
隊列中的數據以先進先出(First In First Out,即FIFO)的方式進出隊列。算法
隊列的實現方式有多種方式,主要是使用不一樣的結構來存儲隊列元素,好比使用數組、單向鏈表、雙向列表等。這裏看數組方式的實現。sql
實現的四要素分別是數組、隊頭(head)指針、隊尾(tail)指針以及隊列操做集。其中數組用於存放元素,隊頭指針用於指引隊頭位置,隊尾指針用於指引隊尾位置,隊列核心操做爲入隊和出隊。此外,隊列存放的元素數量不能超過數組的長度。後端
將 "the","monster","is","coming"
四個字符串分別進行入隊操做,數組
對隊列中進行兩次出隊操做,網絡
-------------推薦閱讀------------數據結構
個人開源項目彙總(機器&深度學習、NLP、網絡IO、AIML、mysql協議、chatbot)併發
跟我交流,向我提問:
歡迎關注: