一、queue概述
queue是一種先進先出(First In First Out,FIFO)的數據結構。它有兩個出口,形式如下圖所示
特點:
queue允許新增元素、移除元素、從最底端加入元素、取得最頂端元素
但除了最底端可以加入、最頂端可以取出外,沒有任何其他方法可以存取queue的其他元素。換言之queue不允許有遍歷行為
將元素推入queue的動作稱為push,將元素推出 queue的動作稱為pop
底層實現:
SGI STL默認以deque作為缺省情況下的queu底部結構(因為deque是雙向開口的數據結構,所以只要封閉其底端的出口和前端的入口就可以形成一個queue)
queue是一種配接器(Adapter):由于queue系以底部容器完成其所有工作,而具有這種“修改某物接口,形成另一種風貌”之性質者,稱為adapter(配接