給你一串數列,你會如何找出第K大的數?

最簡單的方法就是將此數列排序,並輸出第K個  (假設大到小排序)

但排序可能需要花很長的時間,這樣顯的沒有效率

 

這裡,我們提供另一個方法

 

首先,將數列的前K項做排序,並假設此K項為數列的前K大,且存為陣列A

 

 

接著,考慮數列其他項,並更新A

最後,輸出A陣列的末項   (此處皆為小到大)

arrow
arrow
    全站熱搜

    大神(偽) 發表在 痞客邦 留言(0) 人氣()