一,若干你要知道:
- set,multiset主要目的是为了快速检索 摘自《STL》 P37-45
- set 使用前需要加头文件 #include<set> 头文件中包含了set,multiset两种容器的定义
- set 不会重复插入相同键值的元素,而采取忽略处理 multisetset 允许重复元素键值插入
- 其默认比较规矩下按元素由小到大插入,但也可以按自定义规矩函数插入
二,创建set集合对象:
#include<iostream>
#include<set>
using namespace std;
int main(int argc,char* argv[])
{
set<int >s;
return 0;
}
三,元素的插入与中序遍历:
- 元素插入 insert()
- 前向迭代器 set<int>::iterator name;
- 反向遍历 reverse_iterator (用到rbegin(),rend()两个方法) set<int >::reverse_iterator name;
//定义前向迭代器:
#include<iostream>
#include<set>
using namespace std;
int main(int argc,char* argv[])
{
set<int >m; //定义int形集合s,当前没有任何元素
m.insert(8);
m.insert(12);
m.insert(1);
m.insert(6);
m.insert(8); //第二次插入8,重复元素,不会插入
set<int >::iterator it; //定义前向迭代器
for(it=m.begin();it!=m.end();it++)//中序遍历集合中所有元素
{
cout<<*it<<" ";
}
cout<<endl;
return 0;
}
//定