先上題目描述:
給定兩個大小為 m 和 n 的有序陣列 nums1 和 nums2 。
請找出這兩個有序陣列的中位數。要求演算法的時間複雜度為 o(log (m+n)) 。
你可以假設 nums1 和 nums2 不同時為空。
示例 1:
nums1 = [1, 3]示例 2:nums2 = [2]
中位數是 2.0
nums1 = [1, 2]解題思路:將兩個陣列合併成乙個陣列,排序,然後取中位數,思路比較low沒有達到題目要求的時間複雜度。nums2 = [3, 4]
中位數是 (2 + 3)/2 = 2.5
官方給的解題用得是遞迴法,時間複雜度o(log(min(m,n)))。
下面直接貼**:
LeetCode 兩個排序陣列的中位數
給定兩個大小為 m 和 n 的有序陣列 nums1 和 nums2 請找出這兩個有序陣列的中位數。要求演算法的時間複雜度為 o log m n 示例 1 nums1 1,3 nums2 2 中位數是 2.0示例 2 nums1 1,2 nums2 3,4 中位數是 2 3 2 2.5 package...
LeetCode 兩個排序陣列合併問題
merge sorted array 問題 given two sorted integer arrays a and b,merge b into a as one sorted array.常規思想 從b的起始位置開始,將選中的值與a陣列值逐一判斷,找到a i 大於b j 的i將其插入,如此迭代...
Leetcode 合併兩個有序陣列
題目如下 給定兩個有序整數陣列 nums1 和 nums2,將 nums2 合併到 nums1 中,使得 num1 成為乙個有序陣列。說明 示例 輸入 nums1 1,2,3,0,0,0 m 3 nums2 2,5,6 n 3 輸出 1,2,2,3,5,6 用python只需要兩行 class so...