【学习笔记】STL
信守天下
·
·
个人记录
STL常用容器
vector
vector 不定长数组
定义于头文件 <vector>
函数:
v.front()访问第一个元素
v.back()访问最后一个元素
v.begin()返回指向起始的迭代器
v.end()返回指向末尾的迭代器
v.empty()检查容器是否为空
v.size()返回容纳的元素数
v.max_size()返回可容纳的最大元素数
v.clear()清除内容
v.insert()插入元素
v.push_back()将元素添加到容器末尾
v.pop_back()移除末元素
v.resize()改变容器中可存储元素的个数
v.erase()擦除元素
遍历:
vector<int>v;
for(int i : v) {
cout << i << " ";
}
vector<int>v;
for(auto i = v.begin() ; i < v.end() ; i++){
cout << *i << " ";
}
deque
deque 双端队列
定义于头文件 <deque>
函数:
v.front()访问第一个元素
v.back()访问最后一个元素
v.begin()返回指向起始的迭代器
v.end()返回指向末尾的迭代器
v.empty()检查容器是否为空
v.size()返回容纳的元素数
v.max_size()返回可容纳的最大元素数
v.clear()清除内容
v.insert()插入元素
v.push_back()将元素添加到容器末尾
v.pop_back()移除末元素
v.resize()改变容器中可存储元素的个数
v.erase()擦除元素
v.push_front()插入元素到容器起始
v.pop_front()移除首元素
queue
queue 队列
定义于头文件 <queue>
函数:
v.front()访问第一个元素
v.back()访问最后一个元素
v.empty()检查底层的容器是否为空
v.size()返回容纳的元素数
v.push()向队列尾部插入元素
v.pop()删除首个元素
forward_list
forward_list 单向链表
定义于头文件 <forward_list>
函数:
v.front()访问第一个元素
v.begin()返回指向起始的迭代器
v.end()返回指向末尾的迭代器
v.empty()检查容器是否为空
v.max_size()返回可容纳的最大元素数
v.clear()清除内容
v.insert_after()在某个元素后插入新元素
v.emplace_after()在元素后原位构造元素
v.erase_after()擦除元素后的元素
v.push_front()插入元素到容器起始
v.pop_front()移除首元素
v.resize()改变容器中可存储元素的个数
v.merge()合并二个已排序列表
v.splice_after()从另一 forward_list 移动元素
v.remove()移除满足特定标准的元素
v.reverse()将该链表的所有元素的顺序反转
v.unique()删除连续的重复元素
v.sort()对元素进行排序
priority_queue
priority_queue 优先队列
定义于头文件 <queue>
函数:
v.top()访问栈顶元素
v.empty()检查底层的容器是否为空
v.size()返回容纳的元素数
v.push()插入元素,并对底层容器排序
v.pop()删除队首元素