quick_sort

This commit is contained in:
2024-12-04 09:50:29 +01:00
parent ef22878499
commit cb84498028

View File

@@ -0,0 +1,60 @@
from typing import Any
def partitionement(liste: list[Any],debut,fin):
pivot = liste[debut]
gauche = debut + 1
droite = fin - 1
while gauche <= droite:
while (gauche <= droite) and (liste[gauche] <= pivot):
gauche += 1
while (gauche <= droite) and (liste[droite] > pivot):
droite -= 1
if gauche < droite:
exchange(liste,gauche,droite)
gauche += 1
droite -= 1
exchange(liste,droite,debut)
return droite
def exchange(liste, indx_g, indx_d):
liste[indx_g],liste[indx_d] = liste[indx_d], liste[indx_g]
l = [12,4,0,44,27]
print(partitionement(l,0,len(l)-1))