这道题采用了C++中的STL编程,采用了链表list,,所以直接使用list里面的
类函数,就比较简单了,,AC了,,但个人觉得这样做没啥意思。。
#include<iostream>
using namespace std;
#include<queue>
#include <list>
void merge(int A[], int m, int B[], int n)
{
list<int> p1;
for(int i=0;i<n;i++)
p1.push_back(B[i]);
for(int i=0;i<m;i++)
p1.push_back(A[i]);
p1.sort();
for(int i=0;i<m+n;i++)
{
A[i]=p1.front();
p1.pop_front();
}
}
int main()
{
int A[10]={3,5,8,9,10,0,0,0,0,0};
int B[4]={2,4,6,7};
merge(A,5,B,4);
for(int i=0;i<10;i++)
cout<<A[i]<<' ';
cout<<endl;
system("pause");
return 0;
}