STL——set
Posted tonyyy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STL——set相关的知识,希望对你有一定的参考价值。
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的主要内容,如果未能解决你的问题,请参考以下文章