ソートアルゴリズム可視化
バブル・選択・挿入・マージ・クイックソートをステップごとにアニメーション表示。
時間計算量 O(n²)空間計算量 O(1)安定性 安定
隣接要素を比較・交換しながら最大値を末尾へ移動させる。
要素数20
速度
通常比較中交換中ソート済みステップ: 0
ソートアルゴリズムについて
ソートアルゴリズムは配列を順序正しく並べ替えるアルゴリズムです。 時間計算量・空間計算量・安定性の3つが主な評価指標です。
各アルゴリズムの特徴
- バブルソート O(n²): 最も単純。隣接要素を繰り返し交換。安定ソート。
- 選択ソート O(n²): 最小値を選んで先頭から並べる。交換回数が少ない。不安定。
- 挿入ソート O(n²): ほぼソート済みデータに強い。小規模データに実用的。安定ソート。
- マージソート O(n log n): 分割統治法。安定ソートで最悪計算量が保証される。O(n) の追加メモリが必要。
- クイックソート 平均 O(n log n): 実用的に最速クラス。ピボット選択が重要。最悪 O(n²)。不安定。
安定ソートとは
同じキーを持つ要素の相対順序がソート後も保たれる性質を「安定性」と言います。 バブル・挿入・マージソートは安定ソートですが、選択・クイックソートは一般に不安定です。