请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

求解n个元素中第k大的元素

这一节讲的使用快速排序的思想来求解时间复杂度是O(n),但是使用一个容量最大为k的最小堆来求解,时间复杂度是O(nlogk),因为k是常数,所以其复杂度都是O(n),那么两种解法哪个更优,在各种情况下更优呢?

正在回答

1回答

liuyubobobo 2019-10-27 10:21:48

使用堆的优点是,不需要一次性知道所有数据,数据可以一点一点流入堆。同时,堆中相当于保持的是当下已知数据的 top k。这在很多场景下都是很有意义。


继续加油!:)

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号