什么是快速选择及案例分析
什么是快速选择我们这里指的选择是指找出序列第 K 大或者第 K 小的数据。对于这类问题如果想用旧知识解决。那完全可以先将数据进行排序比如使用上文中的快速排序算法。那自然很容易从有序数据中找出第 K 的数据。案例分析对快排的剪枝如果你对上文的快排原理已经了解了那么会发现对于快速选择这个问题使用完整的快排完全是大材小用的。因为很多数据完全是不用再花费精力去排序的。再拿上述 [4, 1, 6, 9, 8, 5, 2, 3, 0, 7] 举例若此时要获得第 5 小的数据k5, 从0开始计。我们只要在递归树中不断地判断是否满足了 5 个数据相对有序即可。最终我们会发现在我们找到 k5 时左右两侧都可能还是乱序的。即使在整体乱序下我们还是找到了第 k 的数据并避免很多递归和排序可见整个算法跑下来的速度肯定不会大于将整体数据进行排序。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2557286.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!