C STL 雙端佇列deque詳解

2022-05-09 02:45:11 字數 876 閱讀 1950

一.解釋

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...