Gnomesort: Unterschied zwischen den Versionen
Aus KGS-Wiki
Sn (Diskussion | Beiträge) |
Sn (Diskussion | Beiträge) K Kategorie |
||
| Zeile 21: | Zeile 21: | ||
{{Footer Sortieralgorithmen}} | {{Footer Sortieralgorithmen}} | ||
[[Kategorie:Sortieralgorithmen]] | |||
Version vom 14. März 2024, 18:00 Uhr
Gnomesort ist ein sehr einfacher Sortieralgorithmus, der nach folgendem Prinzip arbeitet:
Gegeben: Eine Liste A der Länge n.
- Setze eine Variable
iauf0 - Wiederhole die folgenden Schritte, bis die Liste fertig sortiert ist:
- Betrachte
A[i]undA[i+1] - Wenn
A[i] ≤ A[i+1], ...- ... erhöhe
ium 1. - Falls nun
i = n-1ist, ist die Liste fertig sortiert.
- ... erhöhe
- Wenn
A[i] > A[i+1], ...- ... vertausche die beiden.
- Falls
i > 0, verringereium 1
- Betrachte
Laufzeit
Gnomesort ist am schnellsten, wenn die Liste bereits der Größe nach sortiert ist, weil dann jede Zahl nur einmal betrachtet und nicht vertauscht werden muss.
Gnomesort ist am langsamsten, wenn die Liste umgekehrt sortiert ist, weil jede Zahl schrittweise an ihre korrekte Position ertauscht werden muss und dann ebenso schrittweise wieder zum Ende des sortierten Bereichs gehüpft werden muss.
Die Laufzeit von Gnomesort bewegt sich darum im besten Fall in der Größenordnung und im schlechtesten Fall in der Größenordnung .
Weblinks
