注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号
x
时间复杂度 不是最优的,但是 Leetcode 也ac了,大家 看看就行了 ,O (log(m+n))的版本网上已经有了啊
public class Solution {//mergesor O(m+n)的做法
public double findMedianSortedArrays(int A[], int B[]) {
if((A==null||A.length==0)&&(B==null||B.length==0))
return -1.0;
int[] res=new int[A.length+B.length];
int i=0,j=0,k=0;
while(i<A.length&&j<B.length){
if (A[i]<B[j]){
res[k]=A[i];
i++;
k++;
}
else {
res[k]=B[j];
j++;
k++;
}
}
while(i<A.length){
res[k]=A[i];
i++;
k++;
}
while(j<B.length){
res[k]=B[j];
j++;
k++;
}
if((A.length+B.length)%2==0)
return ((double)(res[res.length/2])+(double)(res[res.length/2-1]))/2;
else
return (double)(res[res.length/2]);
}
}
|