Sortieralgorithmen
Bubble, Insertion, Selection, Merge, Quick, Heap, Cocktail, Shellsort, Timsort, Introsort und Radix Sort als Balken-Animation mit Pseudocode-Highlight und Schritt-Log.
- Bubble SortBubble Sort interaktiv: Balken zeigen die Vergleiche und Tausche jeder Runde, Pseudocode hebt die aktive Zeile hervor. Mit Best-, Average- und Worst-Case-Analyse, Stabilität und Anwendungshinweisen.
- Insertion SortInsertion Sort interaktiv: Der Algorithmus baut links einen sortierten Präfix auf und schiebt jedes neue Element an die richtige Position. Best-Case linear, Worst-Case quadratisch, stabil.
- Selection SortSelection Sort interaktiv: Pro Runde wird das Minimum des unsortierten Teils an den Anfang getauscht. Genau n-1 Schreibvorgänge, immer O(n^2), nicht stabil.
- Merge SortMerge Sort interaktiv: Rekursive Halbierung und stabile Verschmelzung mit L- und R-Puffer. Garantiert O(n log n), stabil, ideal als External Sort für große Datenmengen.
- Quick SortQuick Sort interaktiv: Pivot wählen, partitionieren in kleinere und größere Werte, rekursiv sortieren. Average O(n log n), Worst Case O(n^2), in-place und nicht stabil.
- Heap SortHeap Sort interaktiv mit Baumdarstellung: Max-Heap aufbauen, wiederholt die Wurzel mit dem letzten Heap-Element tauschen und siftDown ausführen. Garantiert O(n log n) und in-place.
- Cocktail SortCocktail Sort (Shaker Sort) interaktiv: bidirektionales Bubble Sort mit Vorwärts- und Rückwärts-Pass. Löst das Schildkröten-Problem, bleibt im Worst Case O(n^2) und stabil.
- ShellsortShellsort interaktiv: verallgemeinerter Insertion Sort, der zunächst weit entfernte Paare sortiert und die Gap-Distanz schrittweise auf 1 reduziert. O(n^2) im Worst Case mit Standard-Sequenz.
- TimsortTimsort interaktiv: Hybrid aus Insertion Sort für kleine Runs und stabilem Bottom-up-Merge. Default-Sortierer in Python und Java, O(n log n) im Worst Case und stabil.
- IntrosortIntrosort interaktiv: Quick Sort, der bei zu tiefer Rekursion auf Heap Sort umschaltet und kleine Bereiche mit Insertion Sort fertig macht. Garantiert O(n log n), Standard in std::sort.
- Radix SortRadix Sort (LSD) interaktiv: stabile Counting-Sort-Iterationen pro Stelle, in Basis 10 mit 10 Buckets. Läuft effektiv linear in O(d · n) für ganzzahlige Schlüssel mit fester Stellenzahl.
- Bogo SortBogo Sort interaktiv: Joke-Algorithmus, der das Array per Fisher-Yates-Shuffle so lange permutiert, bis es zufällig sortiert ist. Erwartete Laufzeit O(n · n!), Worst Case unbeschränkt.