Bergervei/Python-Quicksort
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Python</language>
== Quicksort ==
<code id="64dcd4dca25e5">
from random import *
def zufliste(max, anz):
if anz == 0:
return []
else:
return zufliste(max, anz - 1) + [randint(0, max)]
</code>
<run id="64dcd4dca2682">
print(zufliste(100, 20))
</run>
<code id="64dcd4dca2633">
def zerlegen(el, ls):
if len(ls) == 0:
return [[], []]
else:
tls = zerlegen(el, ls[1:])
if ls[0] < el:
return [tls[0] + [ls[0]], tls[1]]
else:
return [tls[0], tls[1] + [ls[0]]]
def quicksort(ls):
if len(ls) == 0:
return []
else:
tls = zerlegen(ls[0], ls[1:])
return quicksort(tls[0]) + [ls[0]] + quicksort(tls[1])
def main(max, anz):
ls = zufliste(max, anz)
print("Zufallsliste:")
print(ls)
print("geordnete Zufallsliste:")
print(quicksort(ls))
</code>
<run id="64dc63bf3059f">
main(100, 20)
</run>