zoukankan      html  css  js  c++  java
  • 4. Median of Two Sorted Arrays

    一看题目难度是“难”,吓到我了,上午想了一会就看讨论组的解法了,解法都很发杂呀!!!下午来到实验室看了一篇中文博客,说有两种解决方案,第一种就是将两个数组合并成一个数组,我的解法就是这样子的,竟然ac掉了!!

    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.List;
    
    public class Sum4 {
    
        private static double findMedianSortedArrays(int[] nums1, int[] nums2) {
            int sumLen=nums1.length+nums2.length;
            int median = sumLen%2;
            int middle = sumLen/2;
            int[] num = new int[sumLen];
            int k=0;
            for (int i = 0,j=0; i < nums1.length||j<nums2.length; ) {
                if(i<nums1.length&&j<nums2.length){
                    if(nums1[i]>=nums2[j]){
                        num[k]= nums2[j];
                        j++;
                    }else {
                        num[k]= nums1[i];
                        i++;
                    }
                }else if(i==nums1.length&&j!=nums2.length){
                    num[k] = nums2[j]; 
                    j++;
                }else if(i!=nums1.length&&j==nums2.length){
                    num[k] = nums1[i]; 
                    i++;
                }
                System.out.println(num[k]);
                k++;
                
            }
            if(median==0){
                double a= num[middle];
                double b = num[middle-1];
                return (a+b)/2;
            }else {
                return num[middle];
            }
            
        }
        public static void main(String[] args) {
            int[] nums1 = new int[]{1,3};
            int[] nums2 = new int[]{2,3};
            Double double1 = findMedianSortedArrays(nums1,nums2);
            System.out.println(double1);
        }
    }
  • 相关阅读:
    postman设置页面详解
    postman安装使用
    测试入门1:黑盒测试用例设计方法
    oo第十六次作业
    oo第三单元总结
    OO第二单元总结
    select语句
    MySQL数据库基础操作
    创建和查看数据库
    认识MySQL数据库
  • 原文地址:https://www.cnblogs.com/Michael2397/p/8033188.html
Copyright © 2011-2022 走看看