题解 | #在两个长度相等的排序数组中找到上中位数#
在两个长度相等的排序数组中找到上中位数
http://www.nowcoder.com/practice/6fbe70f3a51d44fa9395cfc49694404f
因为两个排序数组的大小都是n,上中位数相当于两个数组合并排序之后的第n个数,分别给arr1和arr2设置指针,比较大小,就可以找到第n个数。
class Solution {
public:
/**
* find median in two sorted array
* @param arr1 int整型vector the array1
* @param arr2 int整型vector the array2
* @return int整型
*/
int findMedianinTwoSortedAray(vector<int>& arr1, vector<int>& arr2) {
int n=arr1.size();
int pos=n;
int i=0, j=0;
int result{};
while(pos--){
if(arr1[i]<arr2[j]) result=arr1[i++];
else result=arr2[j++];
}
return result;
}
};