4. Median of Two Sorted Arrays(divide and conquer)
2017-09-28 23:26
281 查看
1. Description
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)).
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
2. Analysis
归并排序的时间复杂度为O(log(m+n))。3. code
class Solution { public: static vector<int> merge_sort(vector<int>& nums1, vector<int>& nums2) { int i = 0, j = 0; vector<int> res; while(i < nums1.size() && j < nums2.size()) { if(nums1[i] <= nums2[j]) { res.push_back(nums1[i]); i++; } else { res.push_back(nums2[j]); j++; } } while(i < nums1.size()) { res.push_back(nums1[i]); i++; } while(j < nums2.size()) { res.push_back(nums2[j]); j++; } return res; } double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) { vector<int> res = merge_sort(nums1, nums2); int size = res.size(); if(size % 2 == 0) { return (double)(res[size/2] + res[size/2-1])/2; } else { return (double)(res[size/2]); } } };
4. improvement
<待续>相关文章推荐
- 4.Median of Two Sorted Arrays(Array; Divide-and-Conquer)
- 【算法】【Divide and conquer】Median of Two Sorted Arrays
- Two question about Divide and Conquer
- Leetcode 4. Median of Two Sorted Arrays(java版)
- [leetcode]4. Median of Two Sorted Arrays
- 4. Median of Two Sorted Arrays
- LeetCode-4. Median of Two Sorted Arrays
- 4. Median of Two Sorted Arrays
- 4. Median of Two Sorted Arrays
- 4. Median of Two Sorted Arrays(二分查找)
- 53. Maximum SubArray(divide and conquer)
- LeetCode4. Median of Two Sorted Arrays(寻找第k小数:分治O(log(n+m)))
- 第八章 Divide and Conquer with Splitters
- Divide and Conquer~ 计算inversions
- leetcode_c++:Divide and Conquer: . Search a 2D Matrix II(240)
- leetcode Decode Ways Divide and Conquer
- Leetcode-4. Median of Two Sorted Arrays
- LeetCode 4. Median of Two Sorted Arrays(两个有序数组的中位数)
- 4. Median of Two Sorted Arrays
- Divide and Conquer:241. Different Ways to Add Parentheses