Leetcode-Hard 4. Median of Two S
2019-02-21 本文已影响4人
致Great
题目描述
有两个排序的数组nums1和nums2分别为m和n。 找到两个排序数组的中位数。总运行时间复杂度应为O(log(m + n))。 假设nums1和nums2不能都为空。
思路
将两个数组合并然后排序,根据合并后新数组长度来计算中位数
代码实现
class Solution:
def findMedianSortedArrays(self, nums1: 'List[int]', nums2: 'List[int]') -> 'float':
nums=nums1+nums2
nums.sort()
nums_len=len(nums)
if len(nums)%2==0:
return (nums[nums_len//2-1]+nums[nums_len//2])/2
else:
return nums[nums_len//2]