算法笔记(13)随机选择算法

例:求第k大的数

利用Partition操作随机选择一个数并产生划分,判断该数是不是第K大的数,如果偏小则在右边继续划分,偏大则在左边继续划分,直到找到第K大的数或者达到边界为止。

其中的Partition操作随机选取一个数,这种算法的复杂度为O(n),比排序的O(nlogn)快。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章