Quicksort Algorithmus
Verfasst: Dienstag 2. Dezember 2014, 15:26
Hallo Zusammen,
in der Schle beschäftigen wir uns jetzt mit dem Quicksort Algorithmus. Jetzt bin ich dabei über diesen Code gestolpert. Und meine Frage dazu ist, ob mir den Vielleicht jemand erklären kann, was da in den Zeilen Passiert. Wie der Quicksort Algorithmus in der Theorie funktioniert ist mir klar, nur mit diesem Code komm ich nicht weiter..
Danke schonmal im Voraus 
in der Schle beschäftigen wir uns jetzt mit dem Quicksort Algorithmus. Jetzt bin ich dabei über diesen Code gestolpert. Und meine Frage dazu ist, ob mir den Vielleicht jemand erklären kann, was da in den Zeilen Passiert. Wie der Quicksort Algorithmus in der Theorie funktioniert ist mir klar, nur mit diesem Code komm ich nicht weiter..
Code: Alles auswählen
def quicksort(L, anfang, ende):
if L != []:
pivot = L[anfang]
links = anfang
rechts = ende
while links <= rechts:
while L[links] < pivot:
links = links+1
while L[rechts] > pivot:
rechts = rechts-1
if links <= rechts:
if links < rechts:
h = L[links]
L[links] = L[rechts]
L[rechts] = h
links = links+1
rechts = rechts-1
print(L)
print(anfang, ende, links, rechts)
print()
if anfang < rechts:
L = quicksort(L, anfang, rechts)
if links < ende:
L = quicksort(L, links, ende)
return L
# Test
L = [25, 17, 32, 56, 25, 19, 8, 66, 29, 6, 20, 29]
print(L)
L = quicksort(L, 0, len(L)-1)
print(L)
