deque 容器
- deque (讀作deck)是“doble-ended-queue”的縮寫,和vector一樣都是STL的容器
- deque是雙端陣列,而vector是單端
- 單端與雙端:vector 在首部插入資料時,會在末端開闢新位置,然後整體移動過去,而deque在首部插入資料時,能夠直接在首部前開闢空間儲存插入資料而避免了移動,在末端插入資料也可在末端開闢新空間,所以稱為雙端。
- deque在介面上和vector非常相似,許多操作可以直接替換
- deque比vector多了兩個函式
- deque.push_front(elem) 在容器頭部插入資料
- deque.pop_front() 刪除容器頭部的資料
- deque比vector多了兩個函式
- deque在頭部和尾部新增移除元素都非常快速,但在中部安插或移除元素比較費時。
- #include "deque"
- 實際應用過程中,首選使用vector,當有頻繁的需要在頭部的插入元素的需求時,才會考慮使用deque。