题目链接:https://leetcode.cn/problems/median-of-two-sorted-arrays/
思路
方法:合并数组
将两个有序数组合并成一个数组并将其排序,只需要判断数组长度奇偶。
代码实现
func findMedianSortedArrays(nums1 []int, nums2 []int) float64 { //合并数组 nums1 = append(nums1, nums2...) //用go自带的排序 sort.Ints(nums1) //判断奇偶 if len(nums1) & 1 == 1{ return float64(nums1[(len(nums1) / 2)]) } return float64(nums1[len(nums1) / 2] + nums1[len(nums1) / 2 - 1]) / 2.0 }
复杂度分析
- 时间复杂度:O(n) 其中n表示的是两个有序数组合并后的排序时间
- 空间复杂度:O(n + m) 其中n表示第一个有序数组长度,m表示第二个有序数组长度