目录
前言
set:
multiset:
一、set 对象创建
1、默认构造
2、初始化列表
3、迭代器
4、拷贝构造
二、set 赋值操作
1、=set对象
2、=初始化列表
三、set 大小操作
1、判空
2、大小
四、set 数据插入
1、单值插入
2、多值插入
五、set 数据查找
六、set 数据删除
1、s.erase(x); 删除x
2、s.erase(迭代器); 删除迭代器所在位置的值
3、s.erase(迭代器1,迭代器2);
七、set 数据统计
前言
set:
1.容器内无重复元素。
2.容器内元素为有序排列。
multiset:
1.容器内可以有重复元素。
2.其它性质与set一致。
一、set 对象创建
1、默认构造
set<int> s1;
2、初始化列表
set<int> s2_1={1,2,3,4,5};
set<int> s2_2({1,2,3,4,5});
3、迭代器
set<int> s3(s2_1.begin(),s2_1.end());
4、拷贝构造
set<int> s4(s3);
二、set 赋值操作
set<int> s={1,2,3,4,5};
1、=set对象
s1=s;
2、=初始化列表
s2={1,2,3,4,5};
三、set 大小操作
1、判空
s.empty();
2、大小
s.size();
四、set 数据插入
1、单值插入
s1.insert(x);
2、多值插入
vector<int> v={1,2,3,4,5};
s2.insert(v.begin(),v.end());
五、set 数据查找
s.find(x);
返回值类型是一个迭代器;
若查找成功,则返回指向查找值的迭代器;
若查找失败,则返回s.end();
六、set 数据删除
1、s.erase(x); 删除x
2、s.erase(迭代器); 删除迭代器所在位置的值
迭代器可利用find函数来获取
3、s.erase(迭代器1,迭代器2);
删除[迭代器1,迭代器2)区间内元素
七、set 数据统计
s.cont(x); x出现次数;
因为:set容器不支持重复数据,所以:cont返回值只会是0或1;
但:multiset中数据可以重复。