クラスチームに変数の「スコア」があります。次に、スコア順に並べられたチームのリストと、最初の 5 チームのビューバッグが必要です。
誰でも私を助けることができますか?
クラスチームに変数の「スコア」があります。次に、スコア順に並べられたチームのリストと、最初の 5 チームのビューバッグが必要です。
誰でも私を助けることができますか?
これはおそらく学習課題なので、コードは書きません。
最初の 5 つの項目を探しているため、特にリストが非常に長い場合は、リストの並べ替えにコストがかかりすぎることがあります。代わりに、リストをたどって上位 5 つの要素を選ぶことができます。
元のリストの最初の 5 つの要素で 5 要素の「トップ リスト」をシードし、トップ リストを並べ替えます。そのサイズは固定されているため、その 5 つの要素の並べ替えはO(1)
. 次に、元のリストの残りのN-5
要素を調べて、各項目を並べ替えられた「トップ リスト」の最小要素と比較します。上位 5 つのリストの最小の項目よりも大きい値が表示された場合は、上位の項目の 1 つを現在の項目に置き換え、最小の項目をリストの最後に「配置」します。このプロセス全体はO(N)
であり、ソート ソリューションである よりも大幅に改善される可能性がありますO(N*logN)
。