Sortieralgorithmen

Aus ProgrammingWiki

Zwei sehr unterschiedliche Sortierverfahren im Vergleich:

Bogo Sort

Es wird solange zufällige sortiert, bis die Liste geordnet ist.

Bereits bei 10 Elementen dauert die Suche sehr lange. Bei 10 Elementen ergeben sich 3‘628‘800 mögliche Listen (Varianten) wovon genau 1 die richtige Lösung darstellt (wenn keine Zahlen doppelt vorhanden sind). Wieviel Varianten gäbe es dann bei 100 Elementen in der Liste? (Lösung: 9.3e+157).

Quick Sort

Sortieren als allgemeines Problem

Bei Zahlen können wir mit einem Blick abschätzen, ob die Sortierung funktioniert hat. Nehmen wir für uns eher unbekannte Daten, wird das schon schwieriger. Im Folgenden wird das russische Alphabet verwendet und erneut 10 zufällige Buchstaben daraus in eine Liste gelegt. Die Liste soll nun aufsteigend nach dem russischen Alphabet sortiert werden. Wir erfinden eine Sortierfunktion, die eine Liste mit Werten und ein Alphabet entgegennimmt. Damit haben wir eine allgemeine Sortierfunktion, die für beliebige Alphabete funktioniert.

Noch mal ein Beispiel mit einem anderen Alphabet:

Natürlich könnten wir auch ein Zahlenalphabet aufschreiben