棧和隊列都是線性表。區別在於棧的插入和刪除操做只容許在表的尾端進行,而隊列只容許在表尾插入數據元素,在表頭刪除數據元素。
其餘相同點:
1.都是線性結構。
2.均可以經過順序結構和鏈式結構實現。
3.插入與刪除的時間複雜度都是O(1),空間複雜度相同。
4.多鏈棧和多鏈隊列的管理模式能夠相同。
其餘不一樣點:
1.應用場景不一樣;常見棧的應用場景包括括號問題的求解,表達式的轉換和求值,函數調用和遞歸實現,深度優先搜索遍歷等;常見的隊列的應用場景包括計算機系統中各類資源的管理,消息緩衝器的管理和廣度優先搜索遍歷等。
2.順序棧可以實現多棧空間共享,而順序隊列不能。ide