第一种方法:
题目意思是用log(m+n)的时间复杂度,但这个明显是(m+n)log(m+n)的时间复杂度,明显不符合要求,但是还是通过了测试accept.
主要是一个sort算法。
注意当数量为偶数的时候,存在两个中数,需要求平均值。
时间是56ms,注意到最快解决方案里面是40ms。
class Solution {
public:
double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) {
for(int i = 0;i<nums2.size();i++)
nums1.push_back(nums2[i]);
sort(nums1.begin(), nums1.end());
if(nums1.size() %2 != 0)
return nums1[nums1.size()/2];
else
return (nums1[nums1.size()/2 -1] + nums1[nums1.size()/2])/2.0;
}
};