美文网首页
Top K 问题

Top K 问题

作者: 翼徳 | 来源:发表于2016-06-12 20:20 被阅读1969次

问题描述

有N(N>>10000)个整数,求出其中的前K个最大的数。

问题分析

需要前K个最大数,一定会有比较的过程。因此可以采用排序或者最小堆方式解决。

解决办法

  1. 若数据量不太大,可以用常规的排序方式;
  2. 若数据量太大,且中间数据无需保存,则可用最小堆解决;
  3. 若数据量太大,且中间数据需要保存,则可用外部排序解决;

总结

Top K 问题常见于结果推荐。

参考文档

八大排序算法
Top K 小顶堆实现
Top K算法详细解析

相关文章

  • top K问题

    问题:海量数据处理 - 10亿个数中找出最大的10000个数。解决方案:先拿10000个数建堆,然后一次添加剩余元...

  • Top K问题

    新文集等待补充

  • Top K 问题

    问题描述 有N(N>>10000)个整数,求出其中的前K个最大的数。 问题分析 需要前K个最大数,一定会有比较的过...

  • Top K 问题

  • Top K问题

    参考网站 在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第...

  • TOP k问题

    (1) 最小堆方法 #include using namespace std; void heap_adjust(...

  • BFPTR算法-求TOP-K问题

    BFPTR算法-求TOP-K问题 求TOP-K问题最简单的方式为快速排序后取前K大的即可。但是这样做有两个问题 快...

  • JavaScript BFPRT 算法

    BFPRT 算法 背景 在一组数中求其前 k 小的数,简称TOP-K问题。而目前解决TOP-K问题最有效的算法即是...

  • Top K问题——Parition算法

    Top K问题概述 在非海量数据的情况下,Top K问题的首推解法就是快排中的Parition算法。不仅平均时间复...

  • 必考算法之 Top K 问题

    大家好,这里是《齐姐聊算法》系列之 Top K 问题。 Top K 问题是面试中非常常考的算法题。 Leetcod...

网友评论

      本文标题:Top K 问题

      本文链接:https://www.haomeiwen.com/subject/sgaedttx.html