title: 演算法小練——尋找兩個有序陣列的中位數
date: 2019-11-29 19:00:11
categories:
給定兩個大小為 m 和 n 的有序陣列 nums1 和 nums2。
請你找出這兩個有序陣列的中位數,並且要求演算法的時間複雜度為 o(log(m + n))。
你可以假設 nums1 和 nums2 不會同時為空。
nums1 = [1, 3]nums2 = [2]
則中位數是 2.0
nums1 = [1, 2]nums2 = [3, 4]
則中位數是 (2 + 3)/2 = 2.5
class
solution
else}if
(i==nums1.length && k!=arr.length)}if
(j==nums2.length&& k!=arr.length)}if
(arr.length%2==
0)else
}}
思路就是,將兩個陣列有序合併,然後根據陣列長度,判斷中位數是某個數,還是某兩個數相加
演算法小練 合併兩個有序陣列
title 演算法小練 合併兩個有序陣列 categories 給定兩個有序整數陣列 nums1 和 nums2,將 nums2 合併到 nums1 中 使得 num1 成為乙個有序陣列。初始化 nums1 和 nums2 的元素數量分別為 m 和 n。你可以假設 nums1 有足夠的空間 空間大小...
leetcode題 尋找兩個有序陣列的中位數
成績不是很好,本身寫的也很亂,本文只是提供一種解題思路。要求兩有序陣列的中位數並不難,簡單粗暴的方法就是得到兩陣列合併後的新陣列,取其中位數即可,但是難度在於這個時間複雜度有限制,為 o log m n 一看這個log,那麼很容易想到二分查詢演算法什麼的,而本文的解題過程也正是按照二分的思路來的。通...
LeetCode 4 尋找兩個有序陣列的中位數
給定兩個大小為 m 和 n 的有序陣列 nums1 和 nums2。請你找出這兩個有序陣列的中位數,並且要求演算法的時間複雜度為 o log m n 你可以假設 nums1 和 nums2 不會同時為空。示例 1 nums1 1,3 nums2 2 則中位數是 2.0 示例 2 nums1 1,2 ...