Le banc d'essai des six tris
Exercice · informatique (tronc commun des prépas scientifiques), chapitre 9 — Les tris
Énoncé
Écrire une fonction de validation de tri qui vérifie à la fois le caractère croissant du résultat et la conservation exacte des éléments (permutation).
Corrigé
def valide(tri_renvoie, essais=500):
import random
random.seed(9)
for _ in range(essais):
# Génération d'un tableau de taille et de valeurs aléatoires
t = [random.randint(0, 50) for _ in range(random.randint(0, 40))]
copie = list(t)
r = tri_renvoie(t)
# Propriété 1 : Croissance
assert all(r[i] <= r[i+1] for i in range(len(r) - 1))
# Propriété 2 : Permutation (sans modification de la source)
assert sorted(copie) == r and t == copieLes autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.