题解 | #整型数组合并#
整型数组合并
http://www.nowcoder.com/practice/c4f11ea2c886429faf91decfaf6a310b
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
int m=sc.nextInt();
int[] arr1=new int[m];
for(int i=0;i<m;i++){
arr1[i]=sc.nextInt();
}
Arrays.sort(arr1);
int n=sc.nextInt();
int[] arr2=new int[n];
for(int i=0;i<n;i++){
arr2[i]=sc.nextInt();
}
Arrays.sort(arr2);
Integer[] res=solver(arr1,arr2,m,n);
int pre=res[0];
System.out.print(res[0]);
for(int i=1;i<res.length;i++){
if(res[i]!=pre){
System.out.print(res[i]);
pre=res[i];
}
}
}
public static Integer[] solver(int[] a1,int[] a2,int m,int n){
int i=0,j=0;
List<Integer> list=new ArrayList<>();
while(i<m&&j<n){
if(a1[i]<=a2[j]){
list.add(a1[i]);
i++;
}else {
list.add(a2[j]);
j++;
}
}
if(i==m){
for(int k=j;k<n;k++){
list.add(a2[k]);
}
}
else if(j==n){
for(int k=i;k<m;k++){
list.add(a1[k]);
}
}
return list.toArray(new Integer[0]);
}
}
