主题:set的常见用法
一个内部自动有序且不含重复元素的容器。
// 使用前添加:
#include <set>
using namespace std;
01 set的定义
set<typename> name;
set<typename> name[arraySize];
// set数组
02 set容器内元素的访问
通过迭代器访问,使用*it
访问元素。
set<int>::iterator it;
除了vector和string之外的STL容器都不支持*(it+i)的访问方式。
03 set常见函数
insert(value)
find(value) // 返回迭代器
erase(it) // 迭代器删除一个元素
erase(value) // 删除单个元素
erase(first, last) // 删除一个区间内的所有元素[first, last)
size()
clear()
04 set的常见用途
作用:自动去重并按升序排列
05 拓展
multiset:处理不唯一的情况
unordered_set:只去重但不排序
以散列代替set内部的红黑树(一种自平衡二叉查找树)实现