10亿数据中找出前1000大的

转自:https://blog.csdn.net/o9109003234/article/details/101365271 这是经典的TopN问题,先想到的时先排序,然后取前1000个数。部分排序,只排除前1000个数即可,但这两种方法的时间复杂度都比较高。 两个思路,一个分治(速度快),一个堆排序(空间小)。 分治法 分治法,类似快速排序中的epartition的操作,随机选一个数t,然后对整
相关文章
相关标签/搜索