Exercices Algorithmes Tri rapide (quick sort)
🎉

Bravo!

Avancé 🧠 Fondamentaux 30 XP 0 personnes ont réussi

Tri rapide (quick sort)

Le tri rapide est souvent le plus utilise en pratique. Son idee : choisir un élément pivot, puis séparer tous les éléments en trois groupes.

Imagine que tu tries des eleves par taille. Tu choisis un eleve au hasard comme référence (le pivot). Tu demandes a ceux qui sont plus petits d'aller a gauche, ceux de meme taille de rester au milieu, et ceux plus grands d'aller a droite. Ensuite, tu tries recursivment le groupe de gauche et celui de droite.

L'astuce : on prend le dernier élément comme pivot (c'est le plus simple a implémenter).

En moyenne, le tri rapide est O(n log n), mais il peut etre O(n²) dans le pire cas (liste deja triee, mauvais pivot).

Écris une fonction tri_rapide(lst) qui retourne une nouvelle liste triee.

Exemple :
tri_rapide([10, 7, 8, 9, 1, 5]) renvoie [1, 5, 7, 8, 9, 10]

Tests (3/4)

Tri basique
assert tri_rapide([10, 7, 8, 9, 1, 5]) == [1, 5, 7, 8, 9, 10]
Liste vide
assert tri_rapide([]) == []
Doublons
assert tri_rapide([3, 6, 8, 3, 1]) == [1, 3, 3, 6, 8]

+ 0 tests cachés

Indices (3 disponibles)

solution.py