Tri par sélection

Principe

Soit à trier un tableau de N cases, numérotées de 1 à N.
  1. Rechercher le plus petit élément du tableau
  2. L'échanger avec le contenu de la première case du tableau (case n° 1)
  3. Rechercher le plus petit élément parmi les cases 2 à N
  4. L'échanger avec le contenu de la deuxième case du tableau (case n° 2)
Ainsi de suite, jusqu'à ne plus avoir de cases à explorer

Remarquer qu'on constitue petit à petit une partie basse du tableau triée.

Algorithme

IDebut = IMin
Tant que (IDebut < IMax)

Exemple

Tableau à trier : [7,5,1,9,2]

L'évolution du tableau est figurée ci-dessous.
La case colorée indique la cellule testée.
La colonne Indice contient le résultat du test, c'est à dire l'indice de la cellule contenant la plus petite valeur.

1 2 3 4 5 Indice 1 2 3 4 5 Indice
Recherche 1ère case Recherche 3ème case
7 5 1 9 2 1 1 2 7 9 5 3
7 5 1 9 2 2 1 2 7 9 5 3
7 5 1 9 2 3 1 2 7 9 5 5
7 5 1 9 2 3 1 2 5 9 7
7 5 1 9 2 3 Recherche 4ème case
1 5 7 9 2 1 2 5 9 7 4
Recherche 2ème case 1 2 5 9 7 5
1 5 7 9 2 2 1 2 5 7 9
1 5 7 9 2 2
1 5 7 9 2 2
1 5 7 9 2 5
1 2 7 9 5

Exemple de programme en Visual Basic

Utilisation

Cette méthode est simple à comprendre et à programmer, mais le résultat n'est pas performant.
Elle est donc plutôt adaptée à de petits tableaux (moins de 50 cases).

Retour à la table des matières des tris


Dernière mise à jour de cette page : 12/8/2007