stl库
stl库
vector
头文件
$#include
常用用法
函数 | 含义 |
---|---|
$name$.push_back($value$); | 在$name$尾部接上一个元素$value$ |
$name$.pop_back($value$) | 弹出$name$尾部元素 |
$name$.back() | 获取$name$尾部元素 |
$name$.begin() | 获取$name$的首元素地址 |
$name$.end() | $name$最后一个元素的后一位地址(为空) |
$name$.rbegin() | 获取$name$最后一位地址 |
$name$.rend() | $name$首元素地址的前一位(为空) |
$name$.resize($len$) | 给$name$开拓$len$个空间($name[0]$ ~ $name[len-1]$可用) |
$name$.size() | 返回$name$大小(长度) |
$name$.empty() | 检查$name$是否为空,为空返回$true$ |
queue
头文件
$#include
常用用法
函数 | 含义 |
---|---|
$name$.push($value$); | 在$name$尾部插入一个元素$value$ |
$name$.pop() | 弹出$name$首元素 |
$name$.front() | 获取$name$首元素 |
$name$.size() | 返回$name$大小(长度) |
$name$.empty() | 检查$name$是否为空,为空返回$true$ |
stack
头文件
$#include
常用用法
函数 | 含义 |
---|---|
$name$.push($value$); | 在$name$顶部插入一个元素$value$ |
$name$.pop() | 弹出$name$最顶端元素 |
$name$.top() | 获取$name$最顶端元素 |
$name$.size() | 返回$name$大小(长度) |
$name$.empty() | 检查$name$是否为空,为空返回$true$ |
set
$#include
常用用法
函数 | 含义 |
---|---|
$name$.insert($value$); | 在$name$插入一个元素$value$ |
$name$.size() | 返回$name$大小(长度) |
$name$.empty() | 检查$name$是否为空,为空返回$true$ |
$name$.begin() | 获取$name$的首元素地址 |
$name$.end() | $name$最后一个元素的后一位地址(为空) |
$name$.rbegin() | 获取$name$最后一位地址 |
$name$.rend() | $name$首元素地址的前一位(为空) |
map
头文件
$#include
常用用法
函数 | 含义 |
---|---|
$name$.begin() | 获取$name$的首元素地址 |
$name$.end() | $name$最后一个元素的后一位地址(为空) |
$name$.rbegin() | 获取$name$最后一位地址 |
$name$.rend() | $name$首元素地址的前一位(为空) |
$name$.resize($len$) | 给$name$开拓$len$个空间($name[0]$ ~ $name[len-1]$可用) |
$name$.empty() | 检查$name$是否为空,为空返回$true$ |
地址->first | 该位置的$key$ |
地址->second | 该位置的$value$ |
sort
头文件
$#include
find
头文件
$#include
常用用法
字符串:
1
2string s1, s2;
s1.find(s2);//在s1中查找s2如果找到返回下标
如果没找到返回
npos
;1
2
3if(s1.find(s2) == string::npos){
puts("No");
}数组/容器
1
2
3
4
5int a[105];
vector<int> mp;
find(a, a + len, value);//在a数组中从[0, len)中查找value
find(mp.begin(), mp.beign() + len, value);//在mp容器中从[begin, begin + len)中查找value
find(mp.begin(), mp.end(), value);//在mp容器中查找value如果找到返回地址
如果没找到返回查找末端的下一位
erase
元素确保不重复(
set,map
)直接删除值1
2
3
4set<int>st;
map<int,int>mp;
st.erase(value);
mp.erase(value);元素可能重复(
vector
),删除地址1
2
3vector<int>vc;
vc.erase(ve.begin());//删除首元素
vc.erase(ve.begin() + len);//删除begin() + len位置元素
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Haog's blog!
评论
ValineDisqus