Vous êtes sur la page 1sur 6

Matière : ALGP Chapitre 1

LYCEE SECONDAIRE BARDO PROFESSEUR: MME Fehri Mejri Hanen


 DISCIPLINE : Informatique MATIERE: ALGP
Niveau: 3ème Sciences de l’informatique

Chapitre 4 Les algorithmes de tri et de recherche

Objectifs
Manipulation des algorithmes de tri et de recherche, à savoir :
 Tri : par sélection, à bulles et par insertion.
 Recherche : séquentielle et dichotomique

PLAN DU COURS
I. Les algorithmes de tri ................................................................................................................ 3
1) Définition .............................................................................................................................. 3
2) Tri par sélection ................................................................................................................... 3
a) Principe : P130 ................................................................................................................... 3
b) Exemple : P130 .................................................................................................................. 3
c) Analyse modulaire : P 133, 134 ......................................................................................... 3
d) Application: EX N°1,2 Série N°4 ...................................................................................... 3
3) Tri à bulles ........................................................................................................................... 3
a) Principe : P130 ................................................................................................................... 3
b) Exemple : P130 .................................................................................................................. 3
c) Analyse modulaire : P 133, 134 ......................................................................................... 3
d) Application: EX N°3 Série N°4 ......................................................................................... 3
4) Tri par insertion .................................................................................................................. 3
a) Principe : P139 ................................................................................................................... 3
b) Exemple : P139 .................................................................................................................. 3
c) Analyse de la procédure Tri par insertion.......................................................................... 3
d) Application: EX N°4 Série N°4 ......................................................................................... 4
II. Recherche d’un élément dans un tableau ................................................................................ 4
1) Introduction ......................................................................................................................... 4
2) La recherche séquentielle ................................................................................................... 4
a) Principe .............................................................................................................................. 4
b) Algorithme du programme principal ................................................................................. 4
c) Algorithme de la fonction Recherche ................................................................................ 4

Enseignante: Mme Fehri Mejri Hanen Page 1 sur 6


Matière : ALGP Chapitre 1

3) La recherche dichotomique ................................................................................................ 5


a) Principe .............................................................................................................................. 5
b) Algorithme du programme principal ................................................................................. 5
c) Algorithme de la fonction Recherche ................................................................................ 5
d) Applications : EX N°5,6 série N°4 .................................................................................... 6

Enseignante: Mme Fehri Mejri Hanen Page 2 sur 6


Matière : ALGP Chapitre 1

I.Les algorithmes de tri


1) Définition
L’opération de tri consiste à ordonner un ensemble d’éléments selon un critère donnée dans
l’ordre croissant ou décroissant. On étudie principalement trois méthodes de tri :
 Tri par sélection
 Tri à bulles
 Tri par insertion

2) Tri par sélection


a) Principe : P130
b) Exemple : P130
c) Analyse modulaire : P 133, 134
Algorithme de la fonction Max Algorithme de la procédure permut
DEF FN Max(T :Tab ;d,f :entier) :entier DEF PROC permut(x,y :entier ; var
[M ← d] T :tab)
Pour i de d+1 à f faire Z← T[x]
Si T[i]>T[M] alors M ←i T[x] ← T[y]
Fin si T[y] ← Z
Fin pour Fin permut
Max :=M
Fin Max
d) Application: EX N°1,2 Série N°4

3) Tri à bulles
a) Principe : P130
b) Exemple : P130
c) Analyse modulaire : P 133, 134
d) Application: EX N°3 Série N°4

4) Tri par insertion


a) Principe : P139
b) Exemple : P139
c) Analyse de la procédure Tri par insertion
Procédure TriInsertion Procédure Décaler
DEF PROC TriInsertion(Var T :Tab ;n :entier) DEF PROC Décaler (VAR T : TAB ; term :
Resultat=T entier ; Var p : entier)
T=Pour i de 2 à n faire Résultat=T,P
Si T[i]<T[i-1] alors temp← T[i] T,P = [ ]
P← i Tant que (T[p-1] > temp) et (p  1) faire
Proc decaler(T,Temp,p) T [p]  T [p – 1]
T[p] ← temp pp–1
Fin si fin tant que
Fin pour Fin Décaler

Enseignante: Mme Fehri Mejri Hanen Page 3 sur 6


Matière : ALGP Chapitre 1

Fin TriInsertion
d) Application: EX N°4 Série N°4
II.Recherche d’un élément dans un tableau
1) Introduction
La recherche d’un élément dans un tableau ou dans une liste de valeur est un traitement très
utile en informatique. Parmi les méthodes de recherches, on cite :
 La recherche séquentielle,
 La recherche dichotomique.

2) La recherche séquentielle
Activité : Ecrire un programme qui permet de remplir un tableau T de n entiers de 3 chiffres
(10≤ n<50), puis vérifier si un entier donné X de 3 chiffres existe dans le tableau ou non en utilisant
la méthode de recherche séquentielle.
a) Principe
Cette méthode de recherche consiste à parcourir les éléments du tableau un par un jusqu'à
trouver la valeur cherchée ou arriver à la fin du tableau.
Exemple
Soit un tableau T contenant les dix éléments suivants :

T: 12 10 0 -5 8 12 -2 2 40 -1
1 2 3 4 5 6 7 8 9 10
Pour X = -2 le programme affichera "-2 existe dans le tableau"
Pour X = 5 le programme affichera "5 n’existe pas dans le tableau"
b) Algorithme du programme principal
0) Début Recherche_Seq
1) PROC Saisie (n)
2) Proc Remplir (T, N) Tableau de déclaration des Objets
3) Proc SaisieElem(X)
4) Verif ← FN Recherche (T, N, X) Objets Type/Nature
5) Proc Affiche (Verif) T TAB
6) Fin Recherche_Seq N, X Entier
Tableau de déclaration des nouveaux types Saisie, Affiche Procédure
Types Recherche Fonction
TAB = Tableau de 50 entiers

c) Algorithme de la fonction Recherche


0) Début fonction recherche (Tf : TAB ; Nf, Xf : Entier) : Booléen
Tableau de déclaration
1) [Trouve ← Faux, i ← 1] Répéter
des Objets locaux
Si Tf[i] = Xf Alors Trouve ← Vrai
Sinon i ← i+1
Objets Type/Nature
Finsi
Jusqu’à (Trouve = Vrai) OU (i > Nf) i Entier
2) Recherche ← Trouve Trouve Booléen
3) Fin Recherche

Enseignante: Mme Fehri Mejri Hanen Page 4 sur 6


Matière : ALGP Chapitre 1

3) La recherche dichotomique
Activité : Ecrire un programme qui permet de remplir un tableau T de n entiers positif (12≤
n<100), puis vérifier si un entier donné X positif existe dans le tableau ou non en utilisant la
méthode de recherche dichotomique.
a) Principe
Cette méthode de recherche consiste à rechercher un élément dans un tableau Trié selon le
principe suivant:
1. Fixer le début (Deb) et la fin (Fin) du tableau,
2. Fixer le milieu du tableau (Mil = (Fin + Deb) Div 2),
3. Comparer X et T[Mil], Si (X > T[Mil]) alors rechercher X dans le sous tableau [Mil
+ 1 … Fin] sinon si (X < T[Mil]) alors dans le tableau [Deb … Mil - 1],
4. Répéter les étapes 1, 2 et 3 jusqu’à (X = T[Mil]) ou (Deb > Fin)
Exemple
Soit un tableau T contenant les dix éléments suivants :

T: -5 -2 -1 0 2 8 10 12 12 40
1 2 3 4 5 6 7 8 9 10

Pour X = -2 le programme affichera "-2 existe dans le tableau"


Pour X = 5 le programme affichera "5 n’existe pas dans le tableau"
b) Algorithme du programme principal Tableau de déclaration des Objets
0) Début Recherche_Dicho Objets Type/Nature
1) Proc Saisie (n) T TAB
2) Proc Remplir(T,n) N, X Entier
3) Proc SaisieElem(X) Saisie, Affiche, Remplir Procédure
4) Proc Tri(T,n) SaisieElem
5) Verif ← Recherche (T, N, X) Recherche Fonction
6) Proc Affiche (Verif)
7) Fin Recherche_ Dicho
Tableau de déclaration des nouveaux types
Types
TAB = Tableau de 100 entiers

c) Algorithme de la fonction Recherche


0) Début fonction recherche (Tf : TAB ; Nf, Xf : Entier) : Booléen
1) [Trouve ← Faux, Deb ← 1, Fin ← Nf] Répéter
Mil ← (Deb + Fin) Div 2
Si Tf[Mil] > Xf Alors Tableau de déclaration
Fin ← Mil - 1 des Objets locaux
Sinon
Si Tf[Mil] < Xf Alors Objets Type/Nature
Deb ← Mil + 1 i, Deb, Fin Entier
Sinon Trouve Booléen
Trouve ← Vrai
Finsi
Jusqu’à (Trouve = Vrai) OU (Deb > Fin)
2) Recherche ← Touve
3) Fin Recherche

Enseignante: Mme Fehri Mejri Hanen Page 5 sur 6


Matière : ALGP Chapitre 1

d) Applications : EX N°5,6 série N°4

Enseignante: Mme Fehri Mejri Hanen Page 6 sur 6