算法筆記(13)隨機選擇算法

例:求第k大的數

利用Partition操作隨機選擇一個數併產生劃分,判斷該數是不是第K大的數,如果偏小則在右邊繼續劃分,偏大則在左邊繼續劃分,直到找到第K大的數或者達到邊界爲止。

其中的Partition操作隨機選取一個數,這種算法的複雜度爲O(n),比排序的O(nlogn)快。

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