Wikiには優れたチートシートがありますが、これは含まれていません。比較またはスワップの。(ただし、通常、スワップ数はその複雑さを決定します)。そこで、以下を作成しました。次の情報は正しいですか?エラーがある場合はお知らせください。修正します。
挿入ソート:
- 平均ケース/最悪ケース: ; 入力がすでに降順でソートされている場合に発生します
- ベストケース: ; 入力がすでにソートされている場合
- 比較の数:、最悪の場合&にΘ (N )最良の場合に
- スワップ数:最悪/平均ケース&が最良の場合
選択ソート:
- 平均ケース/最悪ケース/最良ケース:
- 比較数:
- スワップ数:最悪/平均ケース&0最良のケースの中で最もにおいて、アルゴリズムは、あなたが所定の位置に要素を入れ替えたら、あなたは再びそれに触れることはありません、Nスワップが必要です。
マージソート:
- 平均ケース/最悪ケース/最良ケース:。入力がソートされているかどうかはまったく関係ありません
- 比較数:最悪の場合は&最良の場合はΘ (n )。サイズn&mの2つの配列をマージしていると仮定します。ここでn <
- スワップ数:スワップなし![ただし、インプレースソートではなく追加のメモリが必要]
クイックソート:
- 最悪の場合: ; 入力はすでにソートされています
- ベストケース: ; ピボットが配列をちょうど半分に分割するとき
- 比較数:最悪の場合&Θ (n l o g n最良の場合に
- スワップ数:最悪の場合&0、最良の場合は
バブルソート:
- 最悪の場合:
- ベストケース: ; ソート済み
- 比較数:最悪の場合と最良の場合の
- スワップ数:最悪の場合&0、最良の場合は
線形検索:
- 最悪の場合: ; 検索キーが存在しないか、最後の要素
- ベストケース: ; 最初の要素
- 比較数:最悪の場合は、最良の場合は1
バイナリ検索:
- 最悪のケース/平均のケース:
- ベストケース: ; キーが中間要素の場合
- 比較数:最悪/平均の場合&1の場合
この(種類の)質問のメリットについて話し合うには、チャットに参加してください。
—
ラファエル
これは問題ではないので話題外です。
—
David Richerby 14
私も閉じることに投票しました。「質問」がかなり広いので、これもサルベージに挑戦するのは難しいかもしれません(基本的な検索および並べ替えアルゴリズムは正確に何ですか?)
—
Juho