(LeetCode)Median of Two Sorted Arrays
来源:互联网 发布:淘知学堂教材全解 编辑:程序博客网 时间:2024/06/15 11:17
给定两个已经排序好的数组,要求在o(log(m+n))的复杂度下求出中间值。
我使用了o(m+n)复杂度的算法原来LeetCode只是考虑算法的正确性。
我的做法如下:
class Solution {public: double findMedianSortedArrays(int a[], int m, int b[], int n) { int i,j,k; i=j=k=0; int *c=new int [n+m]; while(i+j<m+n){//这里并不需要遍历整个数组只需到一半就可以了。 if(i<m&&j<n){ c[k++]=a[i]<b[j]?a[i++]:b[j++]; } else { if(i==m){ while(j<n)c[k++]=b[j++]; } else { while(i<m)c[k++]=a[i++]; } } } double ans=(double)((m+n)%2)?c[(n+m)>>1]:(c[(((n+m)>>1)-1)]+c[((n+m)>>1)])/2.0; delete[] c; return ans; }};
另外寻找到了根据快排思想而得到的求第k小数的方法可以在o(log(n+m))的复杂度下求出结果。
具体参考:http://blog.csdn.net/yutianzuijin/article/details/11499917/
0 0
- LeetCode: Median of Two Sorted Arrays
- LeetCode Median of Two Sorted Arrays
- leetcode 26: Median of Two Sorted Arrays
- Leetcode 4 Median of Two Sorted Arrays
- [Leetcode] Median of Two Sorted Arrays
- LeetCode 4 - Median of Two Sorted Arrays
- [LeetCode]Median of Two Sorted Arrays
- leetcode Median of Two Sorted Arrays
- LeetCode-Median of Two Sorted Arrays
- [LeetCode] Median of Two Sorted Arrays
- [LeetCode] Median of Two Sorted Arrays
- [leetcode] Median of Two Sorted Arrays
- leetcode-004:Median of Two Sorted Arrays
- Leetcode 4 Median of Two Sorted Arrays
- leetcode之 median of two sorted arrays
- 【转载】【leetcode】Median of Two Sorted Arrays
- LeetCode - Median of Two Sorted Arrays
- [LeetCode]Median of Two Sorted Arrays
- 差分约束系统
- ContentProvider和Uri详解
- 参加ACM CIKM 2007会议
- Qt5的插件机制(3)--QLibraryPrivate类与QLibraryStore类
- 人生找不到安顿的感觉。。。
- (LeetCode)Median of Two Sorted Arrays
- [搜索]一种改进的召回率准确率公式计算方式
- QwtMagnifier解读---from Qwt-6.1.1
- 类普通成员函数与函数的区别
- 字符串加密 API调用的隐藏技术 http://bbs.pediy.com/showthread.php?t=73398
- Qt5的插件机制(4)--Qt插件的元信息metaData
- python算法-深度优先搜索算法
- (LeetCode)Two Sum
- ELF头文件学习