如何能够快速合并两个stl的set

 我来答
carea
推荐于2016-09-14 · TA获得超过459个赞
知道小有建树答主
回答量:395
采纳率:65%
帮助的人:107万
展开全部

下面用的是set自己的插入函数,应该也没有什么更快的了吧,希望对你有用

#include <iostream>
#include <set>
using namespace std;

template<typename T>
void print_container(const T& c)
{
    for (auto iter = c.begin();iter != c.end();++iter)
    {
        cout<<*iter<<" ";
    }
    cout<<endl;
}

int  main (int, char *[])
{

    set<int> set_a,set_b;

    for (int i=0;i<20;++i)
    {
        if (i%2==0)
        {
            set_a.insert(i);
        }
        else
        {
            set_b.insert(i);
        }
    }

    print_container(set_a);
    print_container(set_b);

    set<int> set_ab(set_a.begin(),set_a.end());
    set_ab.insert(set_b.begin(),set_b.end());

    print_container(set_ab);

    return 0;
}

0 2 4 6 8 10 12 14 16 18

1 3 5 7 9 11 13 15 17 19

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19

请按任意键继续. . .

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式