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

简介:

class Solution {

public double findMedianSortedArrays(int[] nums1, int[] nums2) {
         int len1= nums1.length;
         int len2= nums2.length;
         double [] arr  =new double[len1+len2];
         for(int i=0;i<len1;i++){
             arr[i]=nums1[i];
         }
         for (int j = 0;j<len2;j++){
             arr[j+len1]=nums2[j];
         }
    Arrays.sort(arr);
         int mid=(len1+len2)/2;
         if (arr.length%2==0)
             return (arr[mid-1]+arr[mid])/2;
         return arr[mid];
}

}

目录
相关文章
|
3月前
|
算法
正序数组中位数
给定两个有序数组nums1和nums2,要求找到它们合并后的中位数,时间复杂度需达到O(log(m+n))。通过双指针法遍历两个数组,使用left和right变量记录遍历过程中的值,最终根据合并后数组长度的奇偶性返回中位数。此方法有效避免了直接合并数组带来的高时间复杂度问题。
32 0
|
9月前
数组排序,实现升序和降序,输出最大值最小值
数组排序,实现升序和降序,输出最大值最小值
49 2
|
9月前
|
存储 C语言
【03】逆序数组
【03】逆序数组
|
9月前
|
人工智能
数组逆序
数组逆序
35 3
|
9月前
|
存储 算法 Go
LeetCode第四题: 寻找两个正序数组的中位数
给定两个大小分别为m和n的正序(从小到大)数组nums1和nums2。请你找出并返回这两个正序数组的中位数。
|
9月前
|
算法 C++
寻找两个正序数组的中位数(C++)
寻找两个正序数组的中位数(C++)
47 0
|
9月前
leetcode-4:寻找两个正序数组的中位数
leetcode-4:寻找两个正序数组的中位数
47 0
|
9月前
|
算法
leetcode-寻找两个正序数组的中位数
leetcode-寻找两个正序数组的中位数
52 0
|
算法 测试技术 C++
C++算法:寻找两个正序数组的中位数
C++算法:寻找两个正序数组的中位数
寻找两个正序数组中的中位数
寻找两个正序数组中的中位数