剑指offer python版 41.数据流中的中位数

""" 如何获得一个数据流中的中位数?若是从数据流中读出奇数个数值,那么中位数就是全部数值排序后位于中间的数值。 若是从数据流中读出偶数个数值,那么中位数就是全部数值排序以后中间两个数的平均值 """ """ 构建一个最大堆和一个最小堆,分别存储比中位数小的数和大的数。当目前两堆总数为偶数 的时候,把数字存入最大堆,而后重排最大堆,若是最大堆的堆顶数字大于最小堆堆顶数字, 则把两个堆顶数字交换,
相关文章
相关标签/搜索