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
今天这个题目非常简单,按照最常规思路做的。其中学习到l1.extend(l2)
是合并l1和l2的元素。
class Solution(object):
def findMedianSortedArrays(self, nums1, nums2):
"""
:type nums1: List[int]
:type nums2: List[int]
:rtype: float
"""
nums1.extend(nums2)
nums1.sort()
if len(nums1)%2 == 0:
res = float(nums1[len(nums1)/2-1]+nums1[len(nums1)/2])/2
else:
res = nums1[len(nums1)/2]
return res
但是,看到了这个题目对时间的要求,我就想到了能不能不合并直接比较两个list元素就能求出中位数。这种方法应该是可以实现的,目前还没想好,先写到这。