中央値選択アルゴリズムの中央値を使用して、O(n) の中央値を見つけることができます。また、アルゴリズムが完了した後、中央値の左側にあるすべての要素は中央値よりも小さく、右側にあるすべての要素は中央値よりも大きいことがわかっています。しかし、O(n) 時間で中央値に最も近い k 個を見つけるにはどうすればよいでしょうか?
中央値が n の場合、左側の数値は n 未満であり、右側の数値は n より大きいです。ただし、配列は左側または右側でソートされません。数値は、ユーザーが指定した個別の数値の任意のセットです。
問題は、Cormen によるアルゴリズムの紹介、問題 9.3-7 からのものです。