码迷,mamicode.com
首页 > 其他好文 > 详细

STL——set

时间:2019-02-06 12:05:50      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:names   return   erase   注意   bsp   ase   second   tor   个数   

set,就是数学上的集合——每个元素最多只出现一次,并且set中的元素已经从小到大排好序。

具体看代码,不过要注意 s.end() 这个位置不存元素!!!!

begin()    ,返回set容器的第一个元素

end()      ,返回set容器的最后一个元素

clear()    ,删除set容器中的所有的元素

empty()    ,判断set容器是否为空

max_size()   ,返回set容器可能包含的元素最大个数

size()      ,返回当前set容器中的元素个数

erase()              ,删除指定位置的元素 

#include <bits/stdc++.h>
using namespace std;
int main()
{
    set<int> s1;
    set<int>::iterator iter;//输出元素
    set<int>::iterator first;
    set<int>::iterator second;
    
    //插入元素
    s1.insert(4);
    s1.insert(1);
    s1.insert(2);
    s1.insert(5);
    second = s1.end();
    second--;
    cout<<"set size():"<<s1.size()<<endl;
    cout<<"set 中第一个元素为:"<<*s1.begin()<<endl;
    cout<<"set 中最后一个元素为:"<<*second<<endl;
    cout<<"set 中 2 出现的次数"<<s1.count(2)<<endl;//要么是1 要么是零
    cout<<"set 中 4 出现的次数"<<s1.count(4)<<endl;
    if(s1.empty()){
        cout<<"set 为空"<<endl;
    }

    //输出set中元素
    for(iter = s1.begin() ;iter != s1.end(); iter++)
    {
        cout<<*iter<<" ";
    }
    cout<<endl;

    //查找元素
    if((iter = s1.find(2)) != s1.end())
    {
        cout<<"查找成功"<<endl;
    }

    //删除set中元素
    first = s1.begin();
    second = s1.end();
    second--;
    s1.erase(s1.begin());//第一种 删除定位器位置元素
    s1.erase(2);//第二种 直接删除元素
    s1.erase(first ,second );//第三种 删除定位器区域的元素
    s1.clear();//第四种 删除所有元素
    return 0;
}

 

STL——set

标签:names   return   erase   注意   bsp   ase   second   tor   个数   

原文地址:https://www.cnblogs.com/tonyyy/p/10353530.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!