少なくとも100000000個の数字のリストから最大の100個の要素を取得したいと思います。
リスト全体を並べ替えて、並べ替えたリストから最後の100個の要素を取得することもできますが、メモリと時間の両方の点で非常にコストがかかります。
これを行うための既存の簡単でpythonicな方法はありますか?
私が欲しいのは、純粋なソートではなく、次の関数です。実際、気にしない要素を並べ替えるのに時間を無駄にしたくありません。
たとえば、これは私が欲しい関数です:
getSortedElements(100, lambda x,y:cmp(x,y))
この要件は、パフォーマンスの観点からのみであることに注意してください。