Problem4: Median of Two Sorted Arrays
来源:互联网 发布:淘宝上怎么搜迷你钢弩 编辑:程序博客网 时间:2024/06/05 14:07
刚开始做,还以为与前面一样不难,结果踩雷了,用的最原始的方法,先合并了两个有序数组为1个有序数组,然后返回中间值,后面学到优化的算法再回来补充!用最原始的方法,一开始会出现访问越界的情况,是因为没有考虑清楚如果有一个数组为空时的情况!特此记录一下,采用一般方法时,一定要注意考虑边界情况!
class Solution { public double findMedianSortedArrays(int[] A, int[] B) { int m=A.length,n=B.length;if(m==0&&n!=0){if(n%2==1){ if(n==1) return B[0]; else return B[n/2];}else{return (B[n/2]+B[n/2-1])/2.0;}}else if(m!=0&&n==0){if(m%2==1){ if(m==1) return A[0]; else return A[m/2];}else{return (A[m/2]+A[m/2-1])/2.0;}}else{int[] com=combine(A,B);if(com.length%2==1){return com[com.length/2];}else{return (com[com.length/2]+com[com.length/2-1])/2.0;}} } public int[] combine(int[] A,int[] B){int tol=A.length+B.length;int[] fin=new int[tol];int flag=0,i=0,j=0;for(;i<A.length&&j<B.length;){if(A[i]<=B[j]){fin[flag]=A[i];flag++;i++;}else if(A[i]>B[j]){fin[flag]=B[j];flag++;j++;}}for(;i<A.length;){fin[flag]=A[i];flag++;i++;}for(;j<B.length;){fin[flag]=B[j];flag++;j++;}return fin;}}
阅读全文
0 0
- Leetcode Problem4 Median of Two Sorted Arrays
- Problem4: Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of two sorted arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- median-of-two-sorted-arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- Median of Two Sorted Arrays
- 进程,线程,多线程
- 如何批量把excel中已显示的科学计数法取消
- 各种消息队列介绍
- 安卓模拟器安装失败解决方法dev kvm is not found
- 【模板】dinic初体验
- Problem4: Median of Two Sorted Arrays
- PAT 乙级 1033. 旧键盘打字 C语言
- 第16章part3-STL
- POJ
- 互联网性能与容量评估的方法论和典型案例
- MTD(1)---nand flash的基本知识
- Python 从入门到实践 7-4 课后习题
- mui 子页面回传值到父页面
- 训练日记