STL--set

set集合容器:实现了红黑树的平衡二叉检索树的数据结构,插入元素时,它会自动调整二叉树的排列,把元素放到适当的位置,以保证每个子树根节点键值大于左子树所有节点的键值,小于右子树所有节点的键值;另外,还得保证根节点左子树的高度与右子树高度相等。
平衡二叉检索树使用中序遍历算法,检索效率高于vector、deque和list等容器,另外使用中序遍历可将键值按照从小到大遍历出来。
构造set集合主要目的是为了快速检索,不可直接去修改键值.并且set容器中有去重的效果

#include <iostream>
#include <algorithm>
#include <vector>
#include <set>
using namespace std;
set<int> s;
set<int>::iterator it;
int main()
{
    s.insert(4);
    s.insert(2);
    s.insert(1);
    s.insert(3);
    s.insert(5);
    s.insert(1);
    for(it = s.begin(); it != s.end(); it++)
        cout<<*it<<" ";
    cout<<endl<<s.size()<<endl;;
    it = s.end();
    s.erase(4);
    for(it = s.begin(); it != s.end(); it++)
        cout<<*it<<" ";
    cout<<endl<<*s.find(1)<<endl;
    return 0;
}

 

posted @ 2018-03-22 17:46  CCxiao5  阅读(96)  评论(0编辑  收藏  举报