整形配列マージ(STL vector重複要素削除)


説明

voidCombineBySort(int* pArray1,intiArray1Num,int* pArray2,intiArray2Num,int* pOutputArray,int* iOutputNum);

    int* pArray1 : 1

     intiArray1Num: 1

     int* pArray2 : 2

     intiArray2Num: 2

( ):

    int* pOutputArray:

     int* iOutputNum:

    void

 

 


インテリジェントポイント
並べ替え、配列
運転時間制限
10M
メモリ制限
128
入力
1最初の配列の個数を入力2最初の配列の数値を入力3 2番目の配列の個数を入力4 2番目の配列の数値を入力
しゅつりょく
連結後の配列を出力
サンプル入力
3 1 2 5 4 -1 0 3 2
サンプル出力
-101235
STLは多くの実用的なアルゴリズムを提供し,ここでは主にsortとuniqueアルゴリズムを説明する.
重複要素を削除し、まずvectorをソートします.
sort( vec.begin(), vec.end() );
次にuniqueアルゴリズムを使用します.
 vec.erase( unique( vec.begin(), vec.end() ), vec.end() );
Uniqueの戻り値は、重複要素の開始位置です.
vectorに格納されている要素がカスタム構造またはクラスである場合は、オペレータを再ロードする必要があります.
#include
#include
#include
using namespace std;
int main()
{
    int num1;
    int num2;
    int i;
    int con;
    vectorvec;
    cin>>num1;
    for(i=0;i    {
        cin>>con;
        vec.push_back(con);
    }
    cin>>num2;
    for(i=0;i    {
        cin>>con;
        vec.push_back(con);
    }
    sort(vec.begin(),vec.end());
    vec.erase(unique(vec.begin(),vec.end()),vec.end());
    vector::iterator it;
    for(it=vec.begin();it!=vec.end();it++)
    {
        cout<<*it;
    }
    return 0;
}