zoukankan      html  css  js  c++  java
  • STL——set

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

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

    begin()    ,返回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;
    }
  • 相关阅读:
    js json和对象互相转换
    github配置和git学习
    sea.js,spm学习
    less学习-语法(二)
    less学习-浏览器端编译(一)
    grunt-mac上安装运行构建工具的总结(一)
    Advice from an Old Programmer
    scikit-FEM-例2-用Morley元在方形区域上解板弯曲问题
    scikit-FEM-例1-求解Possion边值问题
    在shell脚本中调用sqlplus 分类: H2_ORACLE 2013-06-23 13:01 1437人阅读 评论(0) 收藏
  • 原文地址:https://www.cnblogs.com/tonyyy/p/10353530.html
Copyright © 2011-2022 走看看