Les tris et les fouilles

publicité
Les tris
Tri
–Action de mettre une structure de données
en ordre (croissant ou décroissant).
–Le plus simple est d’insérer en ordre.
–Les algorithmes de tri interviennent lorsque
les éléments sont déjà insérés, dans le
désordre.
Les tris
Tri
–Statégie la plus simple
•Copier les éléments dans l’ordre dans une autre structure.
•Trop coûteux en terme d’espace mémoire mais plus
rapide
–Stratégie plus complexe
•Trier les données en interchangeant les éléments dans la
structure
•Moins coûteux en terme d’espace mémoire mais moins
rapide.
Les tris
Algorithme de tris
–Nous en verrons trois
•Tri sélection
•Tri insertion
•Tri bulle
–Le nom des tris reflète l’algorithme
implémenté.
Les tris
Tri sélection
•On sélectionne le plus petit élément et on
l’échange avec le premier
•On recommence pour le reste du tableau
•Tri insertion
•Prémisse : Le premier élément est trié.
•Pour tous les éléments restants, on les insère
parmi les éléments (à gauche) précédemment
trié.
Les tris
Tri bulle
–Pour chaque élément du début vers la fin
•On parcours de la fin vers l’élément
actuellement traité
–Si l’élément de droite est plus petite que celui de
gauche
»On les échange
–Où est la bulle ?
Les tris
•Lien sur quelques algorithmes de tris
1. http://fr.wikipedia.org/wiki/Algorithme_de_tri
Les fouilles
Fouille (recherche)
–Action de chercher un élément dans une
structure de données.
–Le plus simple est de fouiller
séquentiellement jusqu’à ce que l’élément
soit trouvé ou que la structure soit
complètement traversée.
–Très facile à implémenter, plus coûteux en
terme de temps
Les fouilles
Fouille (recherche)
–On peut améliorer la fouille si les élément
sont triés.
–En fouillant séquentiellement jusqu’à ce
qu’on trouve un élément >=. S’il est égal, on
a trouvé.
–En faisant une fouille binaire.
Les fouilles
Fouille binaire
Debut = 1
Fin = nombre d’éléments
Tant qu’on n’a pas trouvé et que fin >= que début
•On se place au centre de la structure et on regarde si c’est
l’élément cherché (milieu = (debut + fin)/2)
•Si oui, c’est fini.
•Si non, on regarde si l’élément cherché est plus petit que
celui au milieu de la structure.
–Si oui on se déplace à gauche (fin = milieu -1)
–Si non on se déplace à droite (debut = milieu+1)
Téléchargement