Het QuickSort algoritme sorteert een lijst door een spil te kiezen, vervolgens de lijst te partitioneren in de elementen kleiner dan de spil en de elementen groter dan de spil, en tenslotte deze twee partities recursief te sorteren.

Opgave

Schrijf een Python-functie sort(lijst: list), die een lijst als parameter krijgt en deze lijst intern sorteert. De methode moet dus geen nieuwe lijst aanmaken, en enkel elementen in de lijst omwisselen. De sorteren moet met QuickSort gebeuren.

Voorbeelden

>>> a = [1, 5, 2, 3, 6, 4, 5, 2, 1, 5, 2, 3]
>>> sort(a)
>>> a
[1, 1, 2, 2, 2, 3, 3, 4, 5, 5, 5, 6]

Referenties