4. Median of Two Sorted Arrays
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)).
You may assume nums1 and nums2 cannot be both empty.
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
my code:
class Solution { public: double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) { vector<int> v; int num = 0; for (int i = 0; i < nums1.size(); ++i) { v.push_back(nums1[i]); num++; } for (int i = 0; i < nums2.size(); ++i) { v.push_back(nums2[i]); num++; } sort(v.begin(), v.end()); if (num % 2 == 0) { int mid = num / 2; double ans = 1.0*(v[mid] + v[mid-1])/2; return ans; } else { int mid = num / 2; double ans = 1.0*v[mid]; return ans; } } };
Runtime: 44 ms, faster than 51.19% of C++ online submissions for Median of Two Sorted Arrays.
永远渴望,大智若愚(stay hungry, stay foolish)