merge 合并两个有序(升序)的序列[frist1,last1)和[first2,last2),拷贝至[result,result+(last1-frist1)+(last2-frist2))序列中。
参考代码如下:
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
void print(int x)
{
cout<<x<<' ';
}
int main()
{
int a[]={2,3,5,12};
int b[]={9,81,711,5111,31111};
int result[9];
//升序归并
merge(a,a+4,b,b+5,result);
for_each(result,result+9,print);
cout<<endl;
int c[]={9,8,7};
int d[]={8,3,1,-1};
//降序归并
merge(c,c+4,d,d+4,result,greater<int>());
for_each(result,result+7,print);
cout<<endl;
return 0;
}