アルゴリズム分類図

比較ソート vs 非比較ソート:基本的な分類

比較ソート

要素同士の比較により順序を決定

🔵
バブルソート - O(n²)
クイックソート - O(n log n)
🔗
マージソート - O(n log n)
🏔️
ヒープソート - O(n log n)
📍
挿入ソート - O(n²)
🎯
選択ソート - O(n²)

非比較ソート

要素の特性を利用して直接配置

🔢
カウンティングソート - O(n + k)
📊
基数ソート - O(d(n + k))
🪣
バケットソート - O(n + k)

特徴:
• 特定条件下で線形時間を実現
• 整数や文字列など特定型に最適
• 追加メモリが必要な場合が多い

💡 比較ソートの下限はΩ(n log n)、非比較ソートは特定条件下でO(n)を実現

3 / 11