Université des Antilles Guyane
UFR Science Département Mathématique et Informatique
UEO12 Fiche TD/TP 3
Tri dans les tableaux à une dimension
#include <stdio.h>
#define TAILLE 10 ...
int main(void) {
int tab[taille];
...}
Exercice 1 : Tri par sélection
Ecrire un programme permettant de lire et de ranger dans l'ordre croissant un ensemble d'entiers tapés au clavier selon la méthode du tri par sélection :
Ce tri consiste à rechercher le plus petit élément d'un tableau de n éléments et à relever son indice i dans [0..n[ (tab[i]) dans le tableau. A la fin du premier tour de boucle, cette valeur devra se trouver à l'indice 0 (tab[0]) du tableau. On devra donc permuter les valeurs d'indices i et 0 et il ne reste plus ensuite qu'à trier le tableau sur les éléments restant [1..n[.
On répète alors la procédure jusqu'à ce que tous les (n – 1) éléments du tableau aient été traités.
Exercice 2 : Tri à bulle
Reprendre le même exercice que précédemment avec la méthode du tri à bulle.
Méthode :
Le tri à bulle consiste à parcourir le tableau de n éléments tab[ 0 .. n1] de gauche à droite en comparant chaque élément à son prédécesseur et à les permuter si le premier des deux éléments est supérieur au second.
L'algorithme est le suivant :
Les deux premiers éléments sont comparés. Si le premier est supérieur au second, on les permute.
Les comparaisons continuent ensuite ainsi : indices 1 et 2, puis 2 et 3 ... et enfin n2 et n1.
Ainsi l'élément le plus grand se trouve, par permutations successives, placé en dernière position dans le tableau. Reste ensuite à recommencer la méthode pour le reste du tableau : indices 0 à n2, et ainsi de suite.
L'algorithme se termine lorsqu'aucune permutation n'est possible.
L STS 1 UEO12 20062007