leetcode演算法題—golang—兩個排序陣列的中位數(題4)
阿新 • • 發佈:2018-12-20
題目:兩個排序陣列的中位數
給定兩個大小為 m 和 n 的有序陣列 nums1 和 nums2 。
請找出這兩個有序陣列的中位數。要求演算法的時間複雜度為 O(log (m+n)) 。
你可以假設 nums1 和 nums2 不同時為空。
示例 1:
nums1 = [1, 3] nums2 = [2] 中位數是 2.0
示例 2:
nums1 = [1, 2] nums2 = [3, 4] 中位數是 (2 + 3)/2 = 2.5
func findMedianSortedArrays(nums1 []int, nums2 []int) float64 { nums1 = append(nums1,nums2...) sort.Ints(nums1) nums1Len := len(nums1) var c float64 if nums1Len %2 ==0{ temp := nums1Len/2 c = float64(nums1[temp-1]+nums1[temp])/2 return c } //說明為奇數 123和1 temp := nums1Len/2 c = float64(nums1[temp]) return c }