flowchart TD
A[データサイズ?] --> B["`小 (n < 50)
**挿入ソート**`"]
A --> C[安定性必要?]
C -->|Yes| D[メモリ制約?]
C -->|No| E[データ型?]
D -->|余裕あり| F["`**マージソート**`"]
D -->|厳しい| G["`**ブロックソート**`"]
E -->|整数| H["`**基数ソート**`"]
E -->|汎用| I["`**クイックソート**`"]
classDef decision fill:#264f78,stroke:#569cd6,stroke-width:2px,color:#fff
classDef algorithm fill:#252526,stroke:#608b4e,stroke-width:2px,color:#7ac879
class A,C,D,E decision
class B,F,G,H,I algorithm