leetcode 4. Median of Two Sorted Arrays

来源:互联网 发布:刺客信条2mac调中文 编辑:程序博客网 时间:2024/06/07 14:27

There are two sorted arrays nums1 and nums2 of size m and n respectively.

Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)).

Example 1:

nums1 = [1, 3]nums2 = [2]The median is 2.0

Example 2:

nums1 = [1, 2]nums2 = [3, 4]The median is (2 + 3)/2 = 2.5
public class Solution {    public double findMedianSortedArrays(int[] nums1, int[] nums2) {        int i=0,j=0;        int size=(nums1.length+nums2.length);        int[] temp=new int[size/2+1];        boolean flag=false;        if((nums1.length+nums2.length)%2==0)        flag=true;        int k=0;        while(i<nums1.length&&j<nums2.length){            if(nums1[i]<nums2[j]){                temp[k++]=nums1[i++];            }else{                temp[k++]=nums2[j++];            }            if(k==size/2+1){                if(flag)return (temp[k-1]+temp[k-2])*100/100.0/2.0;                else return temp[k-1];            }        }        while(k<=size/2){        while(k<=size/2&&i<nums1.length)            temp[k++]=nums1[i++];        while(k<=size/2&&j<nums2.length)            temp[k++]=nums2[j++];       }                        if(flag)return ((temp[k-1]+temp[k-2])*100)/100.0/2.0;                else return temp[k-1];                }}




0 0
原创粉丝点击