NSI (première) · Chapitre 7 · Application directe du cours
Dérouler à la main tri selection sur [5, 2, 8, 1] , en écrivant l'état…
Parcourir, trier, prouver · Dérouler, compter, vérifier · niveau 1 (application)
Énoncé
Dérouler à la main tri_selection sur [5, 2, 8, 1], en écrivant l'état du tableau après chaque tour, et vérifier l'invariant à chaque étape.
Corrigé
minimum de t[i..3] | échange | état après | |
|---|---|---|---|
| — | — | — | [5, 2, 8, 1] |
| , en position | t[0] t[3] | [1, 2, 8, 5] | |
| , en position | t[1] t[1] | [1, 2, 8, 5] | |
| , en position | t[2] t[3] | [1, 2, 5, 8] |
L'invariant, ligne à ligne — avant le tour , t[0..i-1] est trié et contient les plus petits éléments :
- avant : partie vide, vrai par vacuité ;
- avant :
[1]— trié, et est bien le plus petit des quatre ; - avant :
[1, 2]— trié, et ce sont bien les deux plus petits ; - avant , c'est-à-dire à la sortie :
[1, 2, 5]— trié, et ce sont les trois plus petits. Le restant est donc le plus grand, et il est déjà à sa place.
Deux observations. Au tour , l'échange se fait de la case avec elle-même : c'est un travail nul, et le tri par sélection en fait souvent. Et à la fin, la boucle s'arrête à , pas : la dernière case est juste par conséquence de l'invariant, non parce qu'on s'en est occupé. C'est le sujet de l'exercice suivant.
Le décompte : comparaisons — soit — et échanges.
100 % gratuit
Essaie le suivant avec le tuteur
- L'exercice suivant avec le tuteur, sans compte : il guide pas à pas, sans donner la réponse
- 16 autres exercices corrigés dans ce chapitre, et 20 à chercher avec le tuteur
- Le podcast et la vidéo du chapitre et la correction filmée du TD : 2 minutes sans compte
Sans compte : le cours, 2 minutes de podcast et de vidéo et un exercice avec le tuteur. Pour tout le reste : inscription gratuite en 30 secondes, sans carte bancaire.