給定兩個大小分別為 m 和 n 的排序數組 nums1 和 nums2,傳回這兩個排序數組的中位數。
整體運行時間複雜度應為 O(log (m n))
Example 1: Input: nums1 = [1,3], nums2 = [2] Output: 2.00000 Explanation: merged array = [1,2,3] and median is 2. Example 2: Input: nums1 = [1,2], nums2 = [3,4] Output: 2.50000 Explanation: merged array = [1,2,3,4] and median is (2 + 3) / 2 = 2.5.
限制:
nums1.length == m
nums2.length == n
0
0
1
-106
var findMedianSortedArrays = function(nums1, nums2) { const toltalLength = nums1.length + nums2.length;let x = 0; let y = 0; const mergedArr = [] for(let i=0; i< toltalLength;i++){ if(x> nums1.length -1){ nums2.splice(0, y) mergedArr.push(...nums2) break; } if(y> nums2.length -1){ nums1.splice(0, x) mergedArr.push(...nums1) break; } if(nums1[x] > nums2[y]){ mergedArr.push(nums2[y]); y++; continue; }else{ mergedArr.push(nums1[x]); x++; continue; } } if(toltalLength % 2 === 0){ return (mergedArr[toltalLength/2] + mergedArr[toltalLength/2 -1]) /2 }else{ return mergedArr[(toltalLength-1)/2] } };
以上是兩個排序數組的中位數的詳細內容。更多資訊請關注PHP中文網其他相關文章!