set介绍
C++ 集合(set)是一种包含已排序对象的关联容器,能够自动对进入集合的元素排序,并且不允许重复(另一类集合(multiset)提供对重复元素的支持)。集合中的元素可以是常见类型,也可以是自定义的接口提类型。set容器有2个主要特征:
(1)不能直接改变元素值,因为那样会打乱原本正确的顺序,要改变元素值必须先删除旧元素,再插入新元素。
(2)不提供直接存取元素的任何操作函数,只能通过迭代器(iterator)进行间接存取,可以将迭代器类比成C里的指针。
C++标准模板库提供通用的set模板,需要添加头文件#include<set>
常用操作
1.插入:insert()
2.中序遍历:
set<int> s;
......
set<int>::iterator it; //定义迭代器
//中序遍历集合中的所有元素
for(it=s.begin();it!=s.end();it++)
......
3.删除:
set<int> s;
s.erase(2); //删除键值为2的元素
s.clear(); //清除所有元素
4.元素检索:
set<int> s;
set<int>::iterator it;
it = s.find(2);//查找键值为2的元素
if(it != s.end());
cout<<"已找到"<<endl;
else
cout<<"没找到"<<endl;