欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

TOPK

程序员文章站 2022-06-17 09:30:07
...
实现思路:

TopN算法:从已经存在的数组中,找出最大(或最小)的前n个元素。

算法(以找最大的n个元素为例):
1. 取出数组的前n个元素,创建长度为n的小根堆;
2. 从n开始循环数组的剩余元素,如果当前元素比小根堆的根节点大,则将当前元素设置成小根堆的根节点,并通过调整让堆保持小根堆;
3. 循环完成后,小根堆中的所有元素就是需要找的最大的n个元素;
4. 根据需要对小根堆中的所有元素继续利用堆排序算法进行排序。




相关知识:

Algorithm之排序之堆排序(Heap Sort)
https://lixh1986.iteye.com/blog/2354246

https://blog.csdn.net/xiao__gui/article/details/8687982

https://www.jianshu.com/p/d292401a183a


















































-
相关标签: TOPK TOPN