Problem Description
- La与Lb为按值非递减有序排列
- 要求将La和Lb归并为一个新的线性表Lc,且Lc中的数据元素仍按值非递减有序排列
public static void main(String[] args) {
int[] a = {3,5,8,11};
int[] b = {2,6,8,9,11,15,20};
int[] c = new int[a.length+b.length];
insert(a,b,c);
System.out.println(Arrays.toString(a));
System.out.println(Arrays.toString(b));
System.out.println(Arrays.toString(c));
}
private static void insert(int[] a, int[] b, int[] c) {
int i = 0;
int j = 0;
int k = 0;
while(i<a.length&&j<b.length) {
if(a[i] <= b[j])
c[k++] = a[i++];
else
c[k++] = b[j++];
}
while(i<a.length)
c[k++] = a[i++];
while(j<b.length)
c[k++] = b[j++];
}