兩個正序陣列的中位數

2021-10-11 19:08:13 字數 1249 閱讀 7359

//給定兩個大小為 m 和 n 的正序(從小到大)陣列 nums1 和 nums2。請你找出並返回這兩個正序陣列的中位數。 

//// 高階:你能設計乙個時間複雜度為 o(log (m+n)) 的演算法解決此問題嗎?

////

//// 示例 1:

//// 輸入:nums1 = [1,3], nums2 = [2]

//輸出:2.00000

//解釋:合併陣列 = [1,2,3] ,中位數 2

// //

// 示例 2:

//// 輸入:nums1 = [1,2], nums2 = [3,4]

//輸出:2.50000

//解釋:合併陣列 = [1,2,3,4] ,中位數 (2 + 3) / 2 = 2.5

// //

// 示例 3:

//// 輸入:nums1 = [0,0], nums2 = [0,0]

//輸出:0.00000

// //

// 示例 4:

//// 輸入:nums1 = , nums2 = [1]

//輸出:1.00000

// //

// 示例 5:

//// 輸入:nums1 = [2], nums2 =

//輸出:2.00000

// //

// //

////

// nums1.length == m

// nums2.length == n

// 0 <= m <= 1000

// 0 <= n <= 1000

// 1 <= m + n <= 2000

// -106 <= nums1[i], nums2[i] <= 106

// // related topics 陣列 二分查詢 分治演算法

// ? 3484 ? 0

//時間複雜度 o(m+n)

class solution

while (i < nums1.length)

while (j < nums2.length)

return ints.length%2 == 1 ? ints[ints.length/2]:(ints[ints.length/2-1]+ints[ints.length/2])*0.5;

}}//leetcode submit region end(prohibit modification and deletion)

尋找兩個正序陣列的中位數

尋找兩個正序陣列的中位數 二分法根據中位數的定義,當 m n 是奇數時,中位數是兩個有序陣列中的第 m n 2 個元素,當 m n 是偶數時,中位數是兩個有序陣列中的第 m n 2 個元素和第 m n 2 1 個元素的平均值。因此,這道題可以轉化成尋找兩個有序陣列中的第 k 小的數,其中 k 為 m...

尋找兩個正序陣列的中位數

題目 給定兩個大小為 m 和 n 的正序 從小到大 陣列 nums1 和 nums2。請你找出這兩個正序陣列的中位數,並且要求演算法的時間複雜度為 o log m n 你可以假設 nums1 和 nums2 不會同時為空。示例 1 nums1 1,3 nums2 2 則中位數是 2.0 思路 因為兩...

尋找兩個正序陣列的中位數

給定兩個大小為 m 和 n 的正序 從小到大 陣列 nums1 和 nums2。請你找出並返回這兩個正序陣列的中位數 示例 1 輸入 nums1 1,3 nums2 2 輸出 2.00000 解釋 合併陣列 1,2,3 中位數 2 示例 2 輸入 nums1 1,2 nums2 3,4 輸出 2.5...