map是一種鍵值對容器。使用方法如下特點:鍵唯一且基本資料型別按從小到大公升序排列。
#include //輸入輸出標頭檔案
#include //map標頭檔案
using
namespace
std; //命名空間
map m; //宣告乙個名為m的map
int main()
/*count方式判斷元素是否存在*/
if(m.count('d') == 1)else
/*find方式判斷元素是否存在*/
if(m.find('d') != m.end())else
/*修改map中的值*/
m['d']++; //將d元素的值加1
/*map的容量相關用法*/
if(m.empty())else
cout
<< m.size() << endl; //輸出map的大小
return
0;}
特點:元素唯一且預設從小到大公升序排列使用方法如下
#include //輸入輸出標頭檔案
#include //set標頭檔案
using
namespace
std; //命名空間
set s; //宣告乙個set
int main()else
/*find方式判斷元素是否存在*/
if(s.find(2) != s.end())else
/*遍歷set*/
set::iterator it;
for(it = s.begin(); it != s.end(); it++)
/*set也有empty()和size()兩個函式,與map相同*/
return
0; }
與普通佇列一樣,這是stl中提供的方法使用方法如下
#include //輸入輸出標頭檔案
#include //佇列標頭檔案
using
namespace
std; //命名空間
queue
q; //宣告乙個名為q的佇列
int main()else
return
0;}
與平時提到的棧一樣,這裡是stl中棧的使用方法使用方法如下
#include
#include
using
namespace
std;
stack
s;int main()
STL的基本操作
預設為大根堆,即對頂是最大的 priority queue t p如果需要用自定義比較函式,需要寫成 priority queue,cmp q 如 小根堆 priority queueq q.push q.size q.top 填坑 集合 使用好處 刪除,查詢比陣列快 s.begin 返回set中第...
STL容器比較和基本操作
stl不同容器的優缺點 verctor vector類似於c語言中的陣列,它維護一段連續的記憶體空間,具有固定的起始位址,因而能非常方便地進行隨機訪問,即 操作符,但因為它的記憶體區域是連續的,所以在它中間插入或刪除某個元素,需要複製並移動現有的元素。此外,當被插入的記憶體空間不夠時,需要重新申請一...
STL基本演算法
equal 判斷兩個區間是否相等 fill 改填元素值 fill n 改填元素值,n次 iter swap 元素互換 lexigicographical compare 以字典順序進行比較 max 最大值 min 最小值 mismatch 找出不匹配點 swap 交換元素 set union 並集 ...