1.deque是跟佇列一樣的儲存順序,但是它有一下幾個特點:
1.可以用或者at()來訪問佇列中的任意乙個值
2.比vecor更加消耗空間
3.可以用push和pop對佇列兩端進行修改
4.可以在內部進行插入或者刪除操作,但是效能不及list
2.建立乙個雙向佇列
1.deque();//建立乙個新的雙向佇列
2.deque(size_type num,const type_val)//建立乙個插入num個val的佇列
3.deque(size_type num);//建立乙個大小為num的佇列
4.deque(intput_iterater start,input_iterater end);//建立乙個從start到end的佇列
3.assign()
1.void assign(input_iterater start,input_iterater end)//把start到end的值賦值到佇列中
2.void assign(size_num,const_val);//給佇列複製num個val
4.at()
at(size_type pos);返回乙個指標指向pos的值
5.back();//返回尾部的值
6.front();返回頭部的值
7.begin();//返回頭部的迭代器
8.end();//返回尾部迭代器
9.clear();清空deque
10.erase();從佇列中抹去乙個指定的值
1.erase(iterator pos);//刪去指定的pos位置的值
2.erase(iterator start,iterator end);//刪掉start到end中的值
11.empty();//檢視佇列是否為空
12.insert();插入乙個值
1.insert(iterator pos,size_type num,const type_val);//在佇列pos後插入num個val
2.insert(iterator pos,const type_val);//在pos位置中插入乙個數字val
13.max_size() 返回雙向佇列能容納的最大元素個數
14.pop_back() 刪除尾部的元素
15.pop_front() 刪除頭部的元素
16.push_back() 在尾部加入乙個元素
17.push_front() 在頭部加入乙個元素
18.size();//返回佇列中元素的個數
19.swap();//和另乙個佇列交換元素
void swap(deque&target);//與target佇列交換元素
deque雙向佇列
deque雙向佇列是一種雙向開口的連續線性空間,可以高效的在頭尾兩端插入和刪除元素,deque在介面上和vector非常相似,下面列出deque的常用成員函式 deque的實現比較複雜,內部會維護乙個map 注意!不是stl中的map容器 即一小塊連續的空間,該空間中每個元素都是指標,指向另一段 較...
deque雙向佇列
deque雙向佇列是一種雙向開口的連續線性空間,可以高效的在頭尾兩端插入和刪除元素,deque在介面上和vector非常相似,下面列出deque的常用成員函式 deque的實現比較複雜,內部會維護乙個map 注意!不是stl中的map容器 即一小塊連續的空間,該空間中每個元素都是指標,指向另一段 較...
SDUTACM 雙向佇列
想想雙向鍊錶 雙向佇列的定義差不多,也就是說乙個佇列的隊尾同時也是隊首 兩頭都可以做出隊,入隊的操作。現在給你一系列的操作,請輸出最後佇列的狀態 命令格式 lin x x表示乙個整數,命令代表左邊進隊操作 rin x 表示右邊進隊操作 rout lout 表示出隊操作 第一行包含乙個整數m m 10...