堆的应用

来源:互联网 发布:高速公路车流量数据 编辑:程序博客网 时间:2024/05/21 11:24

一. Top K问题

求最大的前K的数,建立K大小的小顶堆(其中,堆顶数据为第K大数据);求最小的K个数,建立K大小的大顶堆(其中,堆顶数据为第K小数据)。


二。.数据流中位数

1.建立两个堆,一个大根堆,一个小根堆。
2.大根堆存放较小的一半数据,小根堆存放较大的一半数据;大根堆得数据总数==小根堆的数据总数(或者,大根堆的数据总数==小根堆的数据总数+1)。
3.大根堆的堆顶数据则为当前的中位数。


三.优先队列

 网上资料比较多。

0 0
原创粉丝点击