Université Abdelmalek Essaâdi Filière : MIP
Module M22 : Structures de données en C
Faculté des Sciences et Techniques d’Al-Hoceima Semestre : S4
Département de Mathématiques et Informatique A .U : 2021/2022
Pr : ZANNOU Abderrahim
Série N°5: TD/TP
Algorithmes de tri et méthodes de recherche
Objectif de la série n°5:
Cette Série se focalise sur les points suivants :
Tri par sélection, tri à bulles, tri par insertion.
Tri par fusion
Méthodes de recherche
Exercice 1 : 3. Tri par insertion
Ecrire un programme qui initialise 7 réels qui
1. Pour i de 1 a N-1 faire
seront stockés dans un tableau T. Le 2. tmp ← T[i]
programme doit trier le tableau par ordre 3. j←i
croissant et doit afficher le tableau. En 4. Tant que j>0 et T[j-1]>tmp
utilisant : 5. T[j] ←t[j-1]
6. j←j-1
1. Tri par sélection 7. FinTantque
8. T[j]=tmp
1. Pour i de 0 a N-2 faire 9. Finpour
2. k ←i
3. Pour j de i+1 a N-1 Codage :
4. Si T[j]<T[k] alors include <stdio.h>
5. k←j #define N 7
6. FinSi afficher_Table(float T[ ]);
7. Finpour void tri_par_selection(float T[ ]) ;
8. tmp=T[k] void tri_a_bulles(float T[]) ;
9. T[k]=T[i] void tri_par_insertion(float T[ ]) ;
10. T[i]=tmp void main() {
11. Finpour float Table[N]={3,1,4,7,2,6,5};
…..
2. Tri à bulles }
// Definition des fonctions
…
1. Faire Exercice 2 :
2. permute=faux
3. Pour i ←0 a N-2 faire Ecrire un programme qui permet de fusionner
4. Si T[i]>T[i+1] alors deux tableaux triés T1 et T2, de dimensions
5. echanger(T[i], T[i+1])
6. permute=vrai respectives d1 et d2, dans un troisième tableau
7. FinSi trié par ordre croissant.
8. FinPour Exercice 3 :
9. Tantque(permute=vrai)
Ecrire un programme qui permet la recherche
d’un élément dans un tableau en utilisant :
La recherche dichotomique
La recherche séquentielle.
1/1