Quicksort ist ein Divide & Conquer Sortierverfahren: Man wählt ein Pivot , partitioniert in Elemente und Elemente , sortiert die Teilbereiche rekursiv und setzt zusammen.
quicksort(array):
wenn Länge(array) <= 1:
return array
pivot = array[0]
links = []
rechts = []
für element in array[1:]:
wenn element <= pivot:
links.append(element)
sonst:
rechts.append(element)
return quicksort(links) + [pivot] + quicksort(rechts)
Input:
; Partitionieren:
Rekursiv sortieren:
Zusammenfügen: