求算法。有两个排序好的数组,比如啊a,b。把这两个数组合并为1个数组...
发布网友
发布时间:2022-04-29 09:44
我来回答
共2个回答
热心网友
时间:2022-04-26 18:59
好久没写java代码了,下面的代码相当于伪代码,简单描述一下算法吧!
public int merge(int a[], int b[]){
int lengtha = a.length,lengthb = b.length;
int c[] = new array[lengtha + lengthb];
int x = lengtha + lengthb,y = 0;
i = 0;
j = 0;
while(y < x){
if(i < lengtha && j < lengthb){
if(a[i] <= b[j]){
c[y++] = a[i++];
}
else{
c[y++] = b[j++];
}
}
else if(i < lengtha){
c[y++] = a[i++];
}
else{
c[y++] = b[j++];
}
}
return c[y/2];
}
热心网友
时间:2022-04-26 20:17
有序数组还不简单啊?
先来一个二分查找+插入排序,实现两个数组合并为一个数组。
这样中间值也算求出来了。