剑指offer 面试题41:数据流中的中位数 c++

题目:如何获得一个数据流中的中位数?若是从数据流中读出奇数个数值,那么中位数就是全部数值排序以后位于中间的数值。若是从数据流中读出偶数个数值,那么中位数就是全部数值排序以后中间两个数的平均值。less 思路:数据流的中位数最好使用两个堆,这样能够动态维护插入和得到中位数的过程。能够使用一个大顶堆和一个小顶堆, 中位数左边是 大顶堆,放比中位数小的元素,中位数右边放小顶堆,放比中位数大的元素。cod
相关文章
相关标签/搜索