1、有序序列的合并
int main(){
int n = 0;
int m = 0;
int i = 0;
int j = 0;
cin>>n>>m;
int num1[105]={0};
int num2[105]={0};
//输入第1组升序数列
for(i=0;i<n;i++){
cin>>num1[i];
//
}
//输入第2组升序数列
for(i=0;i<m;i++){
cin>>num2[i];
}
// //合并有序序列
// //比较第一组第一个依次和第二组的第一个数据,谁小放到新数组里面
// //若第一组的第一个比较小,开始比较第一组的第二个和第二组的第一个
int arr[205]={0};
//更新i=0;不然while循环进不去
i=0;
int k = 0;
while(i<n&&j<m){
if(num1[i]<num2[j]) {
arr[k++]=num1[i++];
}
else{
arr[k++]=num2[j++];
}
}
if(i==n){
for(;j<m;j++)
arr[k++]=num2[j++];
}
else if(j==m){
for(;i<n;i++)
arr[k++]=num1[i++];
}
for(i=0;i<n+m;i++){
cout<<arr[i];
}
return 0;
}
(2)利用merge库函数
int main(){
int n = 0;
int m = 0;
int i = 0;
int j = 0;
cin>>n>>m;
int num1[105]={0};
int num2[105]={0};
//输入第1组升序数列
for(i=0;i<n;i++){
cin>>num1[i];
//
}
//输入第2组升序数列
for(i=0;i<m;i++){
cin>>num2[i];
}
int arr[205]={0};
merge(num1,num1+n,num2,num2+m,arr);
for(i=0;i<n+m;i++){
cout<<arr[i];
}
return 0;
}