【LeetCode】寻找两个有序数组的中位数

时间:2023-03-09 20:40:02
【LeetCode】寻找两个有序数组的中位数

给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。

请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。

你可以假设 nums1 和 nums2 不会同时为空

 class Solution {

     /**
* @param Integer[] $nums1
* @param Integer[] $nums2
* @return Float
*/
function findMedianSortedArrays($nums1, $nums2) {
$com_arr = array_merge($nums1,$nums2);
asort($com_arr);
$com_arr = array_values($com_arr);
if(count($com_arr)%2 == 0){
//偶数
$num = count($com_arr)/2;
$result = ($com_arr[$num] + $com_arr[$num-1])/2;
}else{
//奇数
$num = floor(count($com_arr)/2);
$result = $com_arr[$num];
}
return floatval($result);
}
}