热线电话:13121318867

登录
2019-06-26 阅读量: 1039
数据分布在100台电脑中,如何高效统计出这批数据的top10

海量数据分布在100台电脑中,想个办法高效统计出这批数据的TOP10

答:

方案1:

在每台电脑上求出TOP10,可以采用包含10个元素的堆完成(TOP10小,用最大堆,TOP10大,用最小堆)。

比如求TOP10大,我们首先取前10个元素调整成最小堆,如果发现,然后扫描后面的数据,并与堆顶元素比较,如果比堆顶元素大,那么用该元素替换堆顶,然后再调整为最小堆。

最后堆中的元素就是TOP10大。

方案2:

求出每台电脑上的TOP10后,然后把这100台电脑上的TOP10组合起来,共1000个数据

再利用上面类似的方法求出TOP10就可以了。

66.5673
1
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子