[PDF] [PDF] Algorithmes de tri interne [tr] (3) Méthodes par échanges - Unisciel

naıve conduit `a l'algorithme du « tri bulles » Une autre, beaucoup plus élaborée , don- nera le « tri rapide » qui est un algorithme par segmentation appliquant 



Previous PDF Next PDF





[PDF] Leçon 903 : Exemples dalgorithmes de tri Correction et - Index of

Algorithm 3 Algorithme du tri par dénombrement 1: function Tri-Bulle(A) > A : tableau à trier 2:



[PDF] Les algorithmes de tri - Luc Brun

Définition d'un algorithme de tri, Le tri par minimum successifs, Le tri a bulles, Le tri rapide Les algorithmes de recherche Recherche séquentielle non triée



[PDF] Trier un tableau 1 Exercices

Question 2 Implantez cet algorithme pour réaliser une procédure qui trie par cette méthode le tableau passé en paramètre Exercice 4-2 Tri à bulle L'algorithme 



[PDF] les méthodes de tri

Le tri à bulle consiste à parcourir le tableau, par exemple de gauche à droite, en comparant les éléments La stratégie de cet algorithme est comme suit : 1



[PDF] 21 Tri à Bulles - Infoscience - EPFL

Un sujet majeur d'algorithmique est le tri d'objets tels que les tableaux Le choix du meilleur algorithme pour une tache particulière peut être un processus 



[PDF] Algorithmes de tri

Exercice 3 Dans l'algorithme du tri `a bulle, 1 montrez qu'apr`es k parcours du tableau (boucle interne), au moins k éléments sont `a leur place, 2 déduisez-en  



[PDF] Algorithmes de tri interne [tr] (3) Méthodes par échanges - Unisciel

naıve conduit `a l'algorithme du « tri bulles » Une autre, beaucoup plus élaborée , don- nera le « tri rapide » qui est un algorithme par segmentation appliquant 



[PDF] Mesures de performance – exemple des tris Les tris - LIPN

La plupart des algorithmes Le principe de l'algorithme est le suivant : on cherche dans le tableau le plus grand élément Le tri à bulles n'est pas très efficace



[PDF] 1 Préparation 2 Tri à bulles

L'objectif de ce TP est de (re)programmer quelques algorithmes de tri Programmez l'algorithme du tri à bulle sur des tableaux de type PERMUTATION Q5

[PDF] algorithme de tri à bulle pdf

[PDF] algorithme de tri complexité

[PDF] algorithme de tri en c

[PDF] algorithme de tri par bulle

[PDF] algorithme de tri par fusion

[PDF] algorithme de tri par insertion

[PDF] algorithme de tri par insertion d'un tableau

[PDF] algorithme de tri par insertion dichotomique

[PDF] algorithme de tri par insertion en c

[PDF] algorithme de tri par insertion en langage c

[PDF] algorithme de tri par insertion java

[PDF] algorithme de tri par insertion pdf

[PDF] algorithme de tri par sélection

[PDF] algorithme de tri par selection en c

[PDF] algorithme de tri par selection java

Algorithmes de tri interne [tr] (3)

Methodes parechanges

Karine Zampieri, Stephane Riviere, Beatrice Amerein-Soltner

UniscielalgoprogVersion 21 mai 2018

Table des matieres

1 Tri bulles

3

1.1 Principe du tri bulles

3

1.2 Version recursive

3

1.3 Complexite du tri bulles

4

1.4 Conclusion

4

Algorithmes de tri interne [tr] (3)

1 Unisciel algoprog { tr00cours3-texte, May 21, 20182

Methodes par echanges

Lesmethodes par echangeseectuent, jusqu'a ce que le tableau soit trie, dessuccessifs dont chacun diminue le nombre d'inversions.Methodes par echanges

ActiontrParEchanges( DRA: Element [ NMAX ] ; n : Entier)Début|TantQue(il existe deux indices ix Etjxtels que inversion ( A , ix , jx ) ) Faire| |permuterTab ( A , ix , jx )

|FinTantQueFin Tout le probleme reside dans le choix des elementsixetjxa permuter. Une methode na ve conduit a l'algorithme du. Une autre, beaucoup plus elaboree, don- nera lequi est un algorithme par segmentation appliquant le principe de l'equilibrage. Unisciel algoprog { tr00cours3-texte, May 21, 20183

1 Tri bulles

Nom anglais :bubble sort

Proprietes :tri interne, sur place, non stable

Complexite :dans tous les cas enΘ(n2)

Visualisation :http://www.sorting-algorithms.com/bubble-sort

1.1 Principe du tri bulles

Letri bullesintervertit toute paire d'elements consecutifs(A[k-1],A[k])non ordonnes. Apres le premier parcours, l'element maximum se retrouve enA[n]. On recommence avec la nouvelle sous-sequence(A[1],...,A[n-1]), et ainsi de suite jusqu'a epuisement de toutes les sous-sequence (la derniere est un couple).Remarque Le sobriquetvient d'une interpretation imagee selon laquelle l'algorithme faitpetit a petit les elementsvers la.

1.2 Version recursiveProcedure trBullesRec

(Tri bulles en recursif)ActiontrBullesRec( DRA: Element [ NMAX ] ; n : Entier)Début|Si(n > 1 ) Alors| |echangerBulles ( A , n )

trBullesRec A n - 1 ) |FinSiFin

ActionechangerBulles( DRA: Element [ NMAX ] ; n : Entier)Variablek: EntierDébut|Pourk<- 2 à n Faire| |Si(A [ k ] < A [ k - 1 ] ) Faire| | |permuterTab ( A , k , k - 1 )

| |FinSi|FinPourFin Unisciel algoprog { tr00cours3-texte, May 21, 20184

1.3 Complexite du tri bullesNombre de comparaisons

Dans la procedure recursive, trier un tableau denelements revient a faire remonter une bulle puis a trier recursivement un tableau den-1elements. SiC(n)designe le nombre de comparaisons pour trier un tableau de taillenetI(n)le nombre de comparaisons pour faire remonter une bulle dans un tableau de taillen, on a : •C(1) = 0: lorsque le tableau n'a qu'un element, on ne fait aucune comparaison •pourn >1:C(n) =I(n) +C(n-1)

Donc :

C(n) =I(n) +I(n-1) +...+I(2)

OrI(k) =k-1, d'ou :

C(n) =n-1?

k=1k=(n-1)n2 ?O(n2)Nombre d'echanges Le nombre d'echanges dans le pire cas (complexite au pire = majorant du nombre d'echanges) est celui ou le tableau est classe dans l'ordre inverse et donc chaque cel- lule doit ^etre permutee : dans ce cas il y a donc autant d'echanges que de tests :

E(n) =C(n)?O(n2)

En moyenne il est egalementΘ(n2)si l'element maximal est initialement reparti aleatoi- rement entre les indices 1,2,..,n.

1.4 Conclusion

Dierentes ameliorations sont possibles (voir exercices), mais elles ne changent pas de facon signicative la complexite du tri bulles qui est vicie a la base par son approche du tableau, chaque element n'etant jamais compare qu'a ses voisins immediats. Le tri bulles est un des plus mauvais algorithmes de tri connus. Si l'on veut un algorithme de tri simple et facile a programmer, on se tournera vers le tri par insertion, toujours preferable au tri bulles. Si l'on veut obtenir une methode ecace procedant par echanges, il faut s'ecarter de l'idee na ve du tri bulles et se tourner vers un algorithme d^u aHoare[Hoare 62], [Hoare

71] qui fournie une des meilleurs methodes connues (sinon la meilleure). On l'appelle

habituellement(quicksort). Le nom de tri par segmentation lui convient egalement assez bien.quotesdbs_dbs20.pdfusesText_26