最高の 2 つの整数を返すために使用できることはわかってMath.max(int, int)
いますが、名前、何らかのランク/スコア (整数の形式) を含む SQL テーブルがあるとします。これらのスコアを取得するにはどうすればよいですか?それらの最高?
または、どうすればそれらを最高から最低に並べ替えて、残りを処理できますか?
これは、単純な MySQL クエリで実行できます。
例:
SELECT * FROM table_name ORDER BY score DESC LIMIT 1;
の最初の行が最も高くなります。
さて、ソートは最大値を見つけるよりも費用がかかります。
最大値を見つけるためにおそらく最も人気のあるコードは次のとおりです。
int max = data[0];
for (int i = 1; i < data.length; i++) {
max = Math.max(max, data[i]);
}
このようにすることには何の問題もありません。
並べ替えは機能しますが、並べ替えはにありますがO(n log n)
、これは明らかにのみO(n)
です。