java中优先级队列
TopK问题
全局排序,O(n*lg(n))
局部排序,只排序TopK个数,O(n*k)
堆,TopK个数也不排序了,O(n*lg(k))
分治法,每个分支“都要”递归,例如:快速排序,O(n*lg(n))
减治法,“只要”递归一个分支,例如:二分查找O(lg(n)),随机选择O(n)
TopK的另一个解法:随机选择+partition
————————————————
版权声明:本文为CSDN博主「架构师之路_」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/z50L2O08e2u4afToR9A/java/article/details/82837278