力扣,寻找两个正序数组的中位数,js解法

41 阅读1分钟

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

大概思路就是先合并两个数组,然后将这两个数组进行排序,最后判断其是奇数还是偶数,如果是奇数,就取中间值,如果是偶数,就取中间两数的平均数。

源码:

var findMedianSortedArrays = function(nums1, nums2) {
  const num = [...nums1,...nums2].sort((a,b)=>a-b)
  if(num.length%2===1){
    return num[Math.floor(num.length/2)]
  } else {
    return (num[num.length/2 - 1] + num[num.length/2])/2
  }
};

结果:

image.png