LeetCode——4. 寻找两个正序数组的中位数

题目

1.链接

传送门–>4. 寻找两个正序数组的中位数.

2.题目描述

在这里插入图片描述

在这里插入图片描述

3.解题思路

思路和算法

简单粗暴,先将两个数组合并,两个有序数组的合并也是归并排序中的一部分。然后根据奇数,还是偶数,返回中位数。

4.题解

合并vector,排序

class Solution {
public:
    double findMedianSortedArrays(vector<int>& a, vector<int>& b)
     {
         int len1=a.size();
         int len2=b.size();
         vector<int>s(len1+len2);
         s=a;
         for(int i=0;i<len2;i++)
         {
             s.push_back(b[i]);
         }
         sort(s.begin(),s.end());
         if((len1+len2)%2!=0)
         {
             return s[(len1+len2)/2];
         }
         else
         return (s[(len1+len2)/2-1]+s[(len1+len2)/2])/2.0;
    }
};

在这里插入图片描述

/

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>