一.解釋
deque
(雙端佇列)是一種具有佇列和棧的性質的資料結構。雙端佇列的元素可以從兩端彈出,其限定插入和刪除操作在表的兩端進行。
二.常用操作:
1.標頭檔案
#include
2.定義
a) deques1;b) deque
s2;
c) deque
s3; /*
node為結構體,可自行定義。
*/
3.常用操作
//a) 建構函式
dequeideq
//b)增加函式
ideq.push_front( x):雙端佇列頭部增加乙個元素x
ideq.push_back(x):雙端佇列尾部增加乙個元素x
//c)刪除函式
ideq.pop_front():刪除雙端佇列中最前乙個元素
ideq.pop_back():刪除雙端佇列中最後乙個元素
ideq.clear():清空雙端佇列中元素
//d)判斷函式
ideq.empty() :向量是否為空,若true,則向量中無元素
//e)大小函式
ideq.size():返回向量中元素的個數
三、舉例
#include #include#include
using
namespace
std;
intmain()
C STL之deque雙端佇列
deque與vector非常相似,不僅可在尾部插入和刪除,還可在頭部插入和刪除,但是內部的資料機制和執行效能與vector不同,一般來說,當考慮到容器元素的記憶體分配策略和操作的效能時,deque比vector有優勢。技術原理 deque的元素資料採用分塊的線性結構進行儲存,如下圖所示。deque分...
C STL標準庫 雙端佇列deque
其實deque的最大特點就是雙端,其可以實現隊首隊尾都插入的功能 vector 只能插入在隊首,但是提供下標訪問方式。stack 不支援下標訪問,存入只能存進棧頂,取出最後乙個必須乙個乙個pop。queue 只能插入進隊首,不支援下標 array 類似陣列 幾乎就是 支援下標,可在任何地方插入 de...
雙端佇列(deque)
區別於資料結構的雙端佇列,這裡的是stl的!雙端佇列 deque容器類 include與vector 類似,支援隨機訪問和快速插入刪除,它在容器中某一位置上的操作所花費的是線性時間。與 vector不同的是,deque還支援從開始端插入資料 push front 此外deque 不支援與vector...