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)).
nums1 = [1, 3] nums2 = [2] The median is 2.0
nums1 = [1, 2] nums2 = [3, 4] The median is (2 + 3)/2 = 2.5
題目難度為:hard 起初以為這道題并不難,但是開始著手做了之后才發現了這道的復雜性。首先看題目要求,對于時間復雜度的要求是O(log(m+n)),那么首先想到的方法必然是二分法,或者近似二分法的方法。我們需要找到中點,那么也就是說,我們需要找到第(m+n)/2大的數;也就是說,要有(m+n)/2-1個數比中位數小,取兩個數組的第(m+n)/4來進行比較;分成三種情況:1、a>b,說明b的前面(m+n)/4個數一定小于中位數,可以排除;2、a
新聞熱點
疑難解答