finish the merge_sort function

This commit is contained in:
2025-02-11 08:43:26 +01:00
parent 3ff17e1dcb
commit a7a7a59773

View File

@@ -65,10 +65,22 @@ def fusion(gauche,droite):
else: else:
return fifo.ajouter(fusion(gauche,fifo.queue(droite)),fifo.tete(droite)) return fifo.ajouter(fusion(gauche,fifo.queue(droite)),fifo.tete(droite))
liste_initiale = fifo.creer_liste()
for i in reversed(range(10)):
liste_initiale = fifo.ajouter(liste_initiale, i) def merge_sort(liste):
gauche, droite = partition(liste_initiale,3 ,7)
print(gauche, droite) if fifo.est_vide(liste):
print(taille(liste_initiale)) return liste
elif fifo.est_vide(fifo.queue(liste)):
return liste # si elle ne contient que un elt
gauche, droite = divise2(liste)
tri1 = merge_sort(gauche) # recursif
tri2 = merge_sort(droite) # recursif
return fusion(tri1,tri2)