Inhalt
Suchen
KnowledgeMaps Flussdiagramm
Links i := Links
PivotIndex := Teile (Daten, Links, Rechts)
QuickSort (Daten, Links, PivotIndex - 1)
j := Rechts - 1
Pivot := Daten [Rechts]
QuickSort (Daten, PivotIndex + 1, Rechts) Daten [i] <= Pivot und i < Rechts
Daten [j] >= Pivot und j > Links
i
Tausche Daten [i] mit Daten [j]
Tausche Daten [i] mit Daten [Rechts]

Links

Prüfe, ob mindestens 2 Werte sortiert werden müssen

PivotIndex := Teile (Daten, Links, Rechts)

Das rechte Element wird als Pivotelement verwendet. Die Funktion sortiert die Daten so um, dass alle Daten links vom Pivotelement kleiner und alle Daten rechts vom Pivotelement größer als dieses sind. Der Rückgabewert gibt die neue Position des Pivotelements an.

QuickSort (Daten, Links, PivotIndex - 1)

Sortiere alle Daten links vom Pivotelement

QuickSort (Daten, PivotIndex + 1, Rechts)

Sortiere alle Daten rechts vom Pivotelement

i := Links

Zähler von links

j := Rechts - 1

Zähler von rechts

Pivot := Daten [Rechts]

Wert des Pivotelements. Nach Ende der Sortierung stehen alle kleineren Werte links und alle größeren Werte rechts vom Pivotelement.

i < Rechts

Suche einen falsch einsortierten Wert links vom Pivotelement

j > Links

Suche einen falsch einsortierten Wert rechts vom Pivotelement

i

Sind noch nicht alle Werte sortiert?

Tausche Daten [i] mit Daten [j]

Tausche die falsch einsortierten Werte gegeneinander aus

Tausche Daten [i] mit Daten [Rechts]

Zum Schluß muss nur noch das Pivot-Element an die richtige Stelle kopiert werden.

Seitenzugriffe
Besucher heute
Durchschnittliche Besucher pro Tag
Besucher seit dem
KnowledgeMaps
Flussdiagramm
Links
i := Links
PivotIndex := Teile (Daten, Links, Rechts)
QuickSort (Daten, Links, PivotIndex - 1)
j := Rechts - 1
Pivot := Daten [Rechts]
QuickSort (Daten, PivotIndex + 1, Rechts)
Daten [i] <= Pivot und i < Rechts
Daten [j] >= Pivot und j > Links
i
Tausche Daten [i] mit Daten [j]
Tausche Daten [i] mit Daten [Rechts]