0. 简介
1. set的定义
2. set容器内元素的访问
可以发现,set
内元素自动递增排序,且自动去除了重复元素。
3. set常用函数实例解析——增删改查
3.1 insert()——增
3.2 find()——查
3.3 erase()——删
3.3.1 删除单个元素
3.3.2 删除一个区间内的所有元素
3.4 size()
3.5 clear()
4. 补充——unordered_set
5. ⭐⭐⭐⭐⭐神奇的用法——set<结构体>重载操作符"<"
对于包含结构体的set
,可以使用重载操作符<
来达到set
的优先级从小到大。这里重载操作符的做法和priority_queue
的重载方法做法是一样的,但是值得注意的是set
是优先级从小到大升序,因此优先级最低的在第一位,而priority_queue
是优先级最高的在队头。这是在编写逻辑的时候需要特别注意的。
6. ⭐⭐⭐⭐⭐神奇的用法——set<结构体>寻找一个结构体
原来对于一个结构体set
,可以直接使用一个结构体去进行查找,例如auto it = s.find(node(num,book[num]));
,这个居然是通过比较结构体里面的值是否相等来判断是否相等的,真是神奇。这个特性我是真的一点都不知道!