#include
//標頭檔案
queue q;
//定義
q.push
(x);
//入隊
q.pop()
;//出隊
q.empty()
;//判空
q.size()
;//佇列元素個數
q.front()
;//隊首元素值
q.back()
;//隊尾元素值
#include
//標頭檔案
stack s;
//定義
s.push
(x);
//入棧
s.pop()
;//出棧
s.empty()
;//判空
s.size()
;//棧元素個數
s.top()
;//棧頂元素值
#include
//標頭檔案
vector a;
//定義
a.size()
//元素個數
a.push_back
(x);
//插入
a.pop_back()
;//刪除
a.front()
;//第乙個元素值
a.back()
//最後乙個元素值
a.begin()
//第乙個數
a.end()
//最後乙個數的後乙個數
for(auto x:a) cout<
<
" ";
//遍歷
#include
//標頭檔案
string s;
//定義s+=
"abc"
;//拼接
s.size()
//大小
s.substr
(a,b)
//子串a位置到b位置
printf
("%s"
,s.c_str()
);//c語言輸出
#include
//標頭檔案
priority_queue q;
//定義
priority_queue
,greater
> q;
//小根堆
q.push()
;//插入
q.pop()
;//刪除堆頂元素
q.top()
;//返回堆頂元素值
q.size()
//佇列大小
#include
//標頭檔案
deque q;
q.size()
//大小
q.push_back
(x);
//向後插入
q.push_front
(x);
//向前插入
q.pop_back()
;//向後刪除
q.pop_front()
;//向前刪除
q.front()
;//隊首元素值
q.back()
;//隊尾元素值
q.empty()
//判空
#include
//標頭檔案
set s;
//定義
s.insert
(x);
//插入
s.count
(x);
/元素x的個數
s.find
(x);查詢x
s.erase
(x);
//刪除所有x
s.lower_bound
(x)//返回大於等於x的最小的數
s.upper_bound
(x)//返回大於x的最小的數
s.begin()
/s.end
() 支援++
--,返回前驅/後繼 o
(logn)
STL容器總結
一.種類 值得注意的是,陣列可以和 stl演算法配合,因為指標可以當作陣列的迭代器使用。二.刪除元素 如果想刪除東西,記住 remove 演算法後,要加上 erase 所謂刪除演算法,最終還是要呼叫成員函式去刪除某個元素,但是因為 remove 並不知道它現在作用於哪個容器,所以 remove 演算...
STL容器總結
stl 豆瓣 stl模板類總結 友朋小盧 友朋小盧 2012 09 19 00 19 29 一 vector模板類 1 包含在標頭檔案vector中,內部機理是使用動態記憶體分配。2 如何定義vector類 vectorstr 5 vector vector int n 3 操作賦被過載,所以可以這...
STL常用容器對比
stl的常用容器大致有以下8個 vector是一種動態陣列,在記憶體中具有連續的儲存空間,支援快速隨機訪問。由於具有連續的儲存空間,所以在插入和刪除操作方面,效率比較慢。vector有多個建構函式,預設的建構函式是構造乙個初始長度為0的記憶體空間,且分配的記憶體空間是以2的倍數動態增長的,在push...