私はいくつかの並べ替えアルゴリズムをいじり、それらのタイミングを計って、それらがどれほど効果的かを確認してきました。そのために、整数の並べ替えアルゴリズムを多数含む静的クラスと、それらのタイミングを計り、データを csv にエクスポートするための別のクラスを作成しました。
私はそのデータを見始めましたが、興味深い傾向に気づきました。私のプログラムは、テスト用に 5 つの異なるランダム配列を作成し、すべての並べ替えアルゴリズムについて、各配列で平均 10 の異なる試行を行います。奇妙なことに、いくつかのアルゴリズムでは最初の配列の平均時間が大幅に長いように見えますが、他のアルゴリズムではそうではありません。これをバックアップするデータの例を次に示します: Dataset 1、Dataset 2、およびDataset 3 (時間はナノ秒単位)。
特定のアルゴリズム、アルゴリズムの実装方法、JVM、またはその他の要因の組み合わせに関係があるかどうかはわかりません。このタイプのデータがどのように発生するか知っている人はいますか?
また、これらすべてのソース コードは、こちらから入手できます。「src」フォルダーの下を見てください。