zl程序教程

您现在的位置是:首页 >  其他

当前栏目

每日一题---4. 寻找两个正序数组的中位数[力扣][Go]

2023-03-14 22:55:28 时间

题目描述

给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。

代码

func findMedianSortedArrays(nums1 []int, nums2 []int) float64 {
    var f float64
    n := len(nums1) + len(nums2)    // 获得两数组总长
    for i, _ := range nums2 {       // 将两数组合并
        nums1 = append(nums1,nums2[i])
    }
    sort.Ints(nums1)                // 给合并后的数组排序
    if n % 2 == 0 {                 // 判断是否为偶数
        f = float64(nums1[n/2 -1] + nums1[n/2])/2
    } else {
        f = float64(nums1[n/2])
    }
    return f
}

运行结果

image