STL之multiset
本文最后更新于:2023年8月26日 晚上
1 |
|
- 定义了一个multiset变量st,st里面可以存放T类型的数据,并且能够自动排序。初始st为空。
- 排序规则:表达式“a<b”为true,则a排在b的前面。
st.insert
添加元素,st.find
查找元素, st.erase删除元素,复杂度都是$log(n)$
头文件#include <set>//使用multiset和set都需要使用
1 |
|
p是迭代器,相当于指针,可用于指向multiset中的元素。访问multiset中的元素要通过迭代器。
与指针的不同:
multiset上的迭代器可++,–,用!=和==比较,但不可以比大小,不可以加减整数,不可相减
st.begin()
返回值类型为multiset<T>::iterator
,是指向st中的头一个元素的迭代器st.end()
返回值类型为multiset<T>::iterator
,是指向st中的最后一个元素后面的迭代器对迭代器++,其就是指向容器中下一个元素,–则令其指向上一个元素
一般用法
1 |
|
自定义排序规则的用法
- 使用greater进行从大到小排序
- 自定义规则(结构体)
1 |
|
STL之multiset
https://furthur509.github.io/2023/08/25/STL之multiset/