标签: algorithm sorting language-agnostic mean
这是一个面试问题。
“每股收到1000个出价。想要存储前50个出价并计算均值。怎么样?”
答案 0 :(得分:12)
你不会“实时排序”。到目前为止,您可能会使用前50个出价的heap(优先级队列)数据结构。如果下一个出价高于最小值,那么您将执行删除最小值,然后插入新出价。优先级队列允许您快速查找最小值,删除它,并添加新值。
您可以通过添加新出价和离开出价之间差异的1/50来维持平均值(仅当新出价高于第50个最高出价时)。