【Set】 迭代

来源:互联网 发布:渔民之家钓鱼源码 编辑:程序博客网 时间:2024/05/18 22:44

怎么从第二个元素开始迭代;

        set<int>::iterator Ite=s.begin();//设置迭代器;        cout<<*Ite;                      //输出第一个元素;        Ite++;                           //迭代器重载++,--运算;        for(;Ite!=s.end();Ite++)            cout<<" "<<*Ite;        cout<<endl;        s.clear();                        //清空set;

一个关于【set】的博客:STL中的set容器的一点总结


                                                                                                              I'm Title  !!!!!!

给你两个集合,要求{A} + {B}. 
注:同一个集合中不会有两个相同的元素.
Input
每组输入数据分为三行,第一行有两个数字n,m(0<n,m<=10000),分别表示集合A和集合B的元素个数.后两行分别表示集合A和集合B.每个元素为不超出int范围的整数,每个元素之间有一个空格隔开.
Output
针对每组数据输出一行数据,表示合并后的集合,要求从小到大输出,每个元素之间有一个空格隔开.
Sample Input
1 212 31 211 2
Sample Output
1 2 31 2

#include<iostream>#include<cstdio>#include<cstring>#include<cstdlib>#include<map>#include<set>#include<vector>#include<algorithm>using namespace std;typedef long long LL;int main(){    set<int >s;    int n,m;    while(cin>>n>>m)    {        int x;        for(int i=0; i<n; i++)        {            scanf("%d",&x);            s.insert(x);        }        for(int i=0; i<m; i++)        {            scanf("%d",&x);            s.insert(x);        }        set<int>::iterator Ite=s.begin();//设置迭代器;        cout<<*Ite;                      //输出第一个元素;        Ite++;                           //迭代器重载++,--运算;        for(; Ite!=s.end(); Ite++)            cout<<" "<<*Ite;        cout<<endl;        s.clear();                        //清空set;    }    return 0;}


0 0
原创粉丝点击