Sortieren
Fünf klassische Sortieralgorithmen — interaktiv visualisiert. Eigene Arrays, eigenes Tempo, Schritt-für-Schritt-Verlauf.
Vergleicht immer benachbarte Paare und "blubbert" das größte Element ans Ende. Einfach zu verstehen, aber ineffizient für große Arrays.
O(n²) · StabilFügt jedes Element an der richtigen Stelle in den bereits sortierten Teil ein — wie das Sortieren von Spielkarten in der Hand.
O(n²) · Stabil · AdaptivSucht in jedem Durchlauf das Minimum und tauscht es an die richtige Position. Minimale Anzahl an Tauschoperationen.
O(n²) · InstabilTeilt das Array rekursiv in Hälften, sortiert sie separat und fügt sie zusammen. Garantiert O(n log n) — egal welche Eingabe.
O(n log n) · StabilWählt ein Pivot-Element und partitioniert das Array in kleinere und größere Werte. In der Praxis oft der schnellste allgemeine Sortieralgorithmus.
O(n log n) avg · Instabil| Algorithmus | Best | Average | Worst | Speicher | In-Place | Stabil |
|---|---|---|---|---|---|---|
| Bubble Sort | O(n) | O(n²) | O(n²) | O(1) | ✓ | ✓ |
| Insertion Sort | O(n) | O(n²) | O(n²) | O(1) | ✓ | ✓ |
| Selection Sort | O(n²) | O(n²) | O(n²) | O(1) | ✓ | ✗ |
| Merge Sort | O(n log n) | O(n log n) | O(n log n) | O(n) | ✗ | ✓ |
| Quick Sort | O(n log n) | O(n log n) | O(n²) | O(log n) | ✓ | ✗ |