一般的な知恵は、十分に小さい配列の場合、挿入ソートが最適であると言います。たとえば、Timsortは、64要素までの配列に対して(バイナリ)挿入ソートを使用します。小さな配列(32または64要素以下)の高速安定ソート
ような再帰次いでソートされる小さなサブリストにリストを分割してクイックソートやマージソートのようないくつかの分割統治アルゴリズム:Wikipediaから。これらのアルゴリズムの実際の最適な最適化は、小さなソートリストをソートするために挿入ソートを使用することです。挿入ソートはこれらのより複雑なアルゴリズムよりも優れています。挿入のソートに利点があるリストのサイズは、環境と実装によって異なりますが、通常は8〜20の要素です。
これは実際には正しいですか?より良い選択肢はありますか?
プラットフォームによって大きく異なる場合は、.NETに最も興味があります。
リフレクターで 'Array.Sort'をチェックします。純粋な.NETコードです。 –
私は40の要素の配列をC++とC#でソートするのにどのような違いがあるのだろうと思っています。 – sirrocco
@sirrocco私はすでにそれを考えており、APIの呼び出しのオーバーヘッドを避けるために、またはハウツーの混合モードなどを研究しています。 – LoneXcoder