set底层数据结构为红黑树,有序,不重复
#include <iostream>
#include <set>
using namespace std;
int main()
{
set<int> s;
//元素插入:insert()
s.insert(5);
s.insert(6);
s.insert(7);
s.insert(8);
s.insert(9);
s.insert(0);
//中序遍历:(用迭代器 iterator)
set<int>::iterator it;
for(it=s.begin(); it!=s.end(); it++)
{
cout<<*it<<" ";
}
cout<<endl;
//反向遍历:(用反向迭代器 reverse_iterator)
set<int>::reverse_iterator rit;
for(rit=s.rbegin(); rit!=s.rend(); rit++)
{
cout<<*rit<<" ";
}
cout<<endl;
//元素删除:erase() 与插入一样,可以高效的删除,并自动调整使红黑树平衡。
s.erase(5);
s.clear();
//元素查找:find(),若找到,返回该键值迭代器位置,否则,返回 end()。
it=s.find(6);
cout<<*it<<endl;
//元素个数:size()
cout<<s.size()<<endl;
//set是否为空:empty()
cout<<s.empty()<<endl;
return 0;
}