【发布时间】:2015-10-20 08:31:14
【问题描述】:
问题:假设整数是从数据流中读取的。以有效的方式查找到目前为止读取的元素的中位数。
我找到了解决方案here
我的问题是为什么我们需要使用堆而不是简单地将数字添加到向量中?
例如,假设我们使用一个向量来存储传入的数据,那么我们调用该方法计算中位数如下:
if vector size is even
return (element at size/2 + element at size/2-1);
else
return (element at size/2);
上述解决方案是否有效?
【问题讨论】: