set和multiset
来源:互联网 发布:网络销售成功案例 编辑:程序博客网 时间:2024/06/06 02:54
比较简单,所以没有注释。
#include<iostream>#include<set>#include<algorithm>#include<functional>using namespace std;int main(){set<int,greater<int> >s;s.insert(4);s.insert(3);s.insert(5);s.insert(1);s.insert(6);s.insert(2);s.insert(5);set<int,greater<int> >::iterator itera;for(itera=s.begin();itera!=s.end();++itera){cout<<*itera<<" ";}cout<<endl;pair<set<int,greater<int> >::iterator,bool>status=s.insert(4);if(status.second){cout<<"4 inserted as element "<<distance(s.begin(),status.first)+1<<endl;}else{cout<<"4 already exists "<<endl;}set<int,greater<int> >ss;ss=s;copy(ss.begin(),ss.end(),ostream_iterator<int>(cout," "));cout<<endl;ss.erase(ss.begin(),ss.find(3));int num;num=ss.erase(5);cout<<num<<" elements removed"<<endl;copy(ss.begin(),ss.end(),ostream_iterator<int>(cout," "));cout<<endl;system("pause");return 0;}
#include<iostream>#include<string>#include<set>#include<functional>#include<algorithm>using namespace std;int main(){multiset<int,greater<int> >m;m.insert(4);m.insert(3);m.insert(5);m.insert(1);m.insert(6);m.insert(2);m.insert(3);multiset<int,greater<int> >::iterator itera;for(itera=m.begin();itera!=m.end();++itera){cout<<*itera<<" ";}cout<<endl;multiset<int,greater<int> >::iterator iterb;iterb=m.insert(4);cout<<"4 inserted "<<distance(m.begin(),iterb)+1<<endl;multiset<int>mm(m.begin(),m.end());copy(mm.begin(),mm.end(),ostream_iterator<int>(cout," "));cout<<endl;mm.erase(mm.begin(),mm.find(3));int num=mm.erase(4);cout<<"remove 4: "<<num<<endl;copy(mm.begin(),mm.end(),ostream_iterator<int>(cout," "));cout<<endl;system("pause");return 0;}
#include<iostream>#include<set>#include<algorithm>#include<functional>using namespace std;template<typename T>class RuntimeCmp{public:enum cmp_mode{normal,reverse};private:cmp_mode mode;public:RuntimeCmp(cmp_mode m=normal):mode(m){}bool operator()(const T& t1,const T& t2)const{return mode==normal?t1<t2:t2<t1;}bool operator==(const RuntimeCmp& rc){return mode==rc.mode;}};void fill(set<int,RuntimeCmp<int> >& s){s.insert(4);s.insert(7);s.insert(5);s.insert(1);s.insert(6);s.insert(2);s.insert(5);}int main(){set<int,RuntimeCmp<int> >s;fill(s);for(set<int,RuntimeCmp<int> >::iterator itera=s.begin();itera!=s.end();++itera){cout<<*itera<<" ";}cout<<endl;RuntimeCmp<int>reverse_order(RuntimeCmp<int>::reverse);set<int,RuntimeCmp<int> >ss(reverse_order);fill(ss);for(set<int,RuntimeCmp<int> >::iterator itera=ss.begin();itera!=ss.end();++itera){cout<<*itera<<" ";}cout<<endl;s=ss;s.insert(3);for(set<int,RuntimeCmp<int> >::iterator itera=s.begin();itera!=s.end();++itera){cout<<*itera<<" ";}cout<<endl;if(s.value_comp()==ss.value_comp()){cout<<"the same sorting"<<endl;}else{cout<<"the different sorting"<<endl;}system("pause");return 0;}
- std::set和multiset
- set和multiset
- set和multiset容器
- Set和multiset
- STL---set和multiset
- STL set和multiset
- set和multiset 学习
- 容器set和multiset
- STL set和multiset
- 容器set和multiset
- STL - set和multiset
- set和multiset容器
- set 和 multiset
- Set和multiset容器
- set和multiset
- multiset和set的区别
- STL之set和multiset
- 再谈set和multiset容器
- 解决mysql忘记密码
- API函数 postmessage 初探
- 模板页和内容页的运行机理
- LINQ标准查询操作符详解
- timer
- set和multiset
- linux服务器性能分析
- solaris 10 如何查看CPU的温度
- STL源码学习----lower_bound和upper_bound算法
- 各种手机或平板的外围器件datasheet的下载地址和相关介绍
- Android之TelephonyManager类的方法详解
- 关于TortoiseSVN的汉化
- 指针 示例剖析
- 关于find命令在shell环境工作时出错的理解