Cours 2. Partie 2: Introduction `a
l’algorithmique.
Dichotomie. Un peu de tris
Olivier Bournez
[email protected]olytechnique.fr
LIX, Ecole Polytechnique
2011-12 Algorithmique
1
Aujourd’hui
Recherche dans un tableau
Dichotomie
Trier
Tri par s´election
Tri `a bulles
Tri par insertion
Tri par fusion
2
Rechercher un ´element
Le probl`eme RECHERCHE
IOn se donne une liste d’entiers naturels T[1],T[2],· · · ,T[n].
IOn se donne xun entier.
IOn doit d´eterminer si x=T[i] pour un certain entier i.
3
int [] T= new int[100];
int x;
int r = Dans(T,x);
...
int Dans(int [] T, int x) {
for (int j=0; j< T.length; j++) {
if (T[j] == x)
return true;}
return false;
}
Nombre de comparaisons (hors variable de boucle)
1C(n)n.
n= nombre d’entiers dans le tableau.
4
Bornes extrˆemes
C(n) = 1 pour un tableau qui d´ebute par x.
C(n) = npour un tableau qui ne contient pas x.
C(n)O(n).
En moyenne:
Isi on suppose que le tableau contient une permutation de
1,2,· · · ,n, et que chaque permutation est choisie de fa¸con
uniforme, en moyenne n+1
2.
5
1 / 38 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !