Median of Two Sorted Arrays

Posted 周先森爱吃素

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Median of Two Sorted Arrays相关的知识,希望对你有一定的参考价值。

这个系列算是出于个人兴趣开的一个新坑吧,最近看到同学刷LeetCode算法题,就想写写那些可以一行Python代码写出来的题目,因此本专栏的文章的解题方式效率不做保证,只为追求“一行的浪漫”。

题目

在这里插入图片描述

题解

简单解释一下题目,给定两个有序数组nums1nums2,要求找到两个数组所有数字的中位数,如果总共是奇数个则是中间数字,否则为中间两个数字的平均值。本题难度为Hard。

代码

这题的思路其实挺直白的,两个数组合并并且找到中间数即可,对于Python3而言,我这里给出了一种通用解法,也给出了一种利用statistics统计库得出结果的方法。

class Solution:
    def findMedianSortedArrays(self, nums1: List[int], nums2: List[int]) -> float:
        return sorted(nums1+nums2)[(len(nums1)+len(nums2))//2] if (len(nums1)+len(nums2))%2 == 1 else (sorted(nums1+nums2)[(len(nums1)+len(nums2))//2]+sorted(nums1+nums2)[(len(nums1)+len(nums2))//2-1])/2
import statistics
class Solution:
    def findMedianSortedArrays(self, nums1: List[int], nums2: List[int]) -> float:
        return statistics.median(sorted(nums1+nums2))

其中前一种解法速度较快,反馈如下。
在这里插入图片描述

以上是关于Median of Two Sorted Arrays的主要内容,如果未能解决你的问题,请参考以下文章

leedcode Median of Two Sorted Arrays

#Leetcode# 4. Median of Two Sorted Arrays

LeetCode: Median of Two Sorted Arrays

** Median of Two Sorted Arrays

Leetcode 4. Median of Two Sorted Arrays(二分)

4. Median of Two Sorted Arrays