剑指offer——数据流中的中位数
2019-04-19 本文已影响0人
不胖二十斤不改名zz
题目描述
如果从数据流中读出奇数个数值,我们使用Insert()方法读取数据流,使用GetMedian()方法获取当前读取数据的中位数。


利用两个堆,一个最大堆,一个最小堆。
注意:

正常函数,如 sort() 等,若用 less<> 则会按照从小到大排序,因为返回 true 的在前,谁小谁在前,这里是这样理解的,如果是最大堆,那么要 less 返回 true 的执行 ,即小的插入到堆中。所以这里用 less 的为最大堆。