题解 | #数据流中的中位数#

数据流中的中位数

https://www.nowcoder.com/practice/9be0172896bd43948f8a32fb954e1be1

import java.util.*;


public class Solution {
    //定义一个数组存放排序的结果
    ArrayList<Integer> val=new ArrayList<Integer>();
    public void Insert(Integer num) {
        //定义一个数组存放排序的结果
        int i=0;
        //遍历数组,插入num,对于每一个num都需要遍历,所有i=0;
        for(;i<val.size();i++){
            if(num>val.get(i)){
                break;
            }
        }
        //特别注意这个是在for循环外的
         val.add(i,num);
    }

    public Double GetMedian() {
        int n=val.size();
        //中位数计算,当数组的个数为奇数时
        double res;
        if (n%2==1){
             res=val.get(n/2);
        }else{
            double a=val.get(n/2);
            double b=val.get((n/2)-1);
            res=(a+b)/2;
        }
        return res;  
    }

}

全部评论

相关推荐

不愿透露姓名的神秘牛友
05-28 12:15
点赞 评论 收藏
分享
05-09 12:23
已编辑
华南理工大学 Java
野猪不是猪🐗:给他装的,双九+有实习的能看的上这种厂我直接吃⑨✌们拿它练练面试愣是给他整出幻觉了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务