不会呀,xdm,江湖有难

img

就是把两个集合的元素合并到一个数组,再进行排列后输出啊

代码如下:

#include<iostream>
using namespace std;

//冒泡排序
void bubble_sort(int a[],int n)
{
    int i,j,t;
    for (i=0;i<n-1;i++)
    {
        for (j=0;j<n-1-i;j++)
        {
            if(a[j] > a[j+1])  //从小到大,升序
            {
                t = a[j];
                a[j]=a[j+1];
                a[j+1]=t;
            }
        }
    }
}


int main()
{
    int n,m,i,j;
    int *a,*b,*c;
    while(1)
    {
        scanf("%d %d",&n,&m);
        if(n==0 && m==0) break;
        a = new int[n];
        b = new int[m];
        c = new int[m+n];
        //给a赋值
        for( i=0;i<n;i++)
            cin >> a[i];
        //给b赋值
        for( i=0;i<m;i++)
            cin >> a[i];
        //合并a和b到c
        for( i=0;i<n;i++)
            c[i]=a[i];
        for(j=0;j<m;j++)
            c[i+j] = b[j];
        //排序
        bubble_sort(c,m+n);
        for(j=0;j<m+n;j++)
            cout << c[j] <<" ";
        cout <<endl;
        delete[] a;
        delete[] b;
        delete[] c;
    }

    
    return 0;
}