バブルソート | アルゴリズムが単純、コードは短くて済む、少量のデータ向け |
挿入ソート | ほとんど並べ替え出来ている場合は超高速、逆順&多量データだと使い物にならぬほど低速 |
シェルソート | 速いがアルゴリズムが結構複雑 |
クイックソート | 超高速だがデータの並び方によっては激遅になる場合がある |
コムソート | バブルソートの改良版で、どんなデータに対してもかなり速い方 |
アルゴリズムが比較的単純 |
クイックソートほどは速くないものの、かなり速い部類に入る |
クイックソートなどのようにデータの並び方によって激遅になるということがない |
ソート種別 | 長所 | 短所 | 備考 | 適用範囲 |
---|---|---|---|---|
「アドインの素」のソート関数 | 呼び出し記述が簡単、処理速度が高速 | 参照設定が必要 | 配列自体のソートもインデックスの取得も可。 | オールマイティ、数万件でも大丈夫、1次元も2次元も可(自動判別) |
安定化コムソート | 安定ソート、処理速度はそこそこ高速 | 安定化した分コムソートより遅い | 並べ替えインデックスを返す | 2次元配列の並べ替え |
コムソート | 呼び出し記述が簡単、処理速度はまあまあ高速 | 安定ソートではない。2次元以上の配列には対応していない。 | 配列自体を並べ替えて返す | 1次元配列の並べ替え |
バブルソート | アルゴリズムが簡単なのでカスタマイズしてプログラムへの組み込みが容易 | 多量データには不向き | 安定ソート | 数十件程度のデータの並べ替え |
あなたの自作クイックソート | とにかく処理速度が超高速 | 自分で作るのは面倒。データの並び方次第では激遅になるという致命的な欠点がある。 | 安定ソートではない | 数万件以上のデータで高速な並べ替えが必要な時。但しデータはランダムであることが必須 |