题目:
分析:
用归并排序的思想,但可以不用合并数组,只需要找到其中位数即可。
代码:
class Solution {
public double findMedianSortedArrays(int[] nums1, int[] nums2) {
int i=0,j=0,l=0;
double d=0,m=0;
int n=(nums1.length+nums2.length)/2;
while(l!=n){
if(i==nums1.length){
m=nums2[j];
j++;l++;
}else{
if(j==nums2.length){
m=nums1[i];
i++;l++;
}else{
if(nums1[i]<nums2[j]){
m=nums1[i];
i++;l++;
}else{
m=nums2[j];
j++;l++;
}
}
}
}
if(i==nums1.length){
d=nums2[j];
}else{
if(j==nums2.length){
d=nums1[i];
}else{
if(nums1[i]<nums2[j]){
d=nums1[i];
}else{
d=nums2[j];
}
}
}
if((nums1.length+nums2.length)%2==0){
d=(d+m)/2;
}
return d;
}
}