参考资料:【C++ STL】Set和Multiset
set 与 multiset
set不允许重复 multiset允许重复
例: set : 1 2 3 4 5 6
multiset : 1 2 2 3 3 3
操作
头文件
#include <set>
定义
multiset<int> s[N];//定义
multiset<int>::iterator it;//迭代器
函数
s.size() |
返回当前的元素数量 |
s.empty () |
判断大小是否为零,等同于\(0==size()\),效率更高 |
count (elem) |
返回元素值为\(elem\)的个数 |
find(elem) |
返回元素值为\(elem\)的第一个元素,如果没有返回\(end()\) |
lower _bound(elem) |
返回元素值\(>=elem\)的第一个元素位置 |
upper _bound (elem) |
返回元素值\(>elem\)的第一个元素位置 |
s.begin() |
返回一个随机存取迭代器,指向第一个元素 |
s.end() |
返回一个随机存取迭代器,指向最后一个元素的下一个位置 |
s.insert(elem) |
插入一个\(elem\)副本,返回新元素位置,无论插入成功与否。 |
s.erase(elem) |
删除与\(elem\)相等的所有元素,返回被移除的元素个数。 |
s.erase(pos) |
移除迭代器\(pos\)所指位置元素,无返回值。 |
s.clear() |
移除所有元素,将容器清空 |