20.set_union求并集

2021-05-17  本文已影响0人  lxr_
#include<iostream>
using namespace std;

#include<vector>
#include<algorithm>

//求并集的两个集合必须为有序序列

void test2001()
{
    vector<int> v1, v2;
    vector<int> vTarget;

    for (int i = 0; i < 10; i++)
    {
        v1.push_back(i);
        v2.push_back(i + 5);
    }

    vTarget.resize(v1.size() + v2.size());//并集最大为两个容器元素的和

    vector<int>::iterator itEnd = set_union(v1.begin(), v1.end(), v2.begin(), v2.end(), vTarget.begin());// 返回值为并集中最后一个元素的位置
    for (vector<int>::iterator it = vTarget.begin(); it != itEnd; it++)
    {
        cout << (*it) << " ";
    }
    cout << endl;

}
int main()
{
    test2001();

    system("pause");
    return 0;
}
上一篇下一篇

猜你喜欢

热点阅读