有两个整数数组A{1,5,9,12,46,47,63,69,70,81}和B{2,4,6,10,29,78,91},其元素均按从小到大的升序排列,编程将它们合并成一个数组C,要求C的元素也是从小到大的升序排列。
int[] A = {1,5,9,12,46,47,63,69,70,81};
int[] B = {2,4,6,10,29,78,91};
int i = 0, j = 0;
int[] C = new int[A.length+B.length];
while (true){
if (i == A.length){
if (j == B.length){
break;
}else {
for (;j < B.length;j++){
C[i+j] = B[j];
}
break;
}
}
if (j == B.length){
if (i == A.length){
break;
}else {
for (;i < A.length; i++){
C[i+j] = A[i];
}
break;
}
}
if (A[i] < B[j]){
C[i+j] = A[i];
i++;
}else {
C[i+j] = B[j];
j++;
}
}
System.out.println(Arrays.toString(C));
public static void main(String[] args) {
Integer A [] ={1,5,9,12,46,47,63,69,70,81};
Integer B [] ={2,4,6,10,29,78,91};
List<Integer> arrayA = new ArrayList(Arrays.asList(A));
List<Integer> arrayB = new ArrayList(Arrays.asList(B));
arrayA.addAll(arrayB);
Collections.sort(arrayA);
List<Integer> arrayC;
arrayC=arrayA;
int size =arrayC.size();
for (int i = 0;i < size;i++) {
System.out.println(arrayC.get(i));
}
}