• Aucun résultat trouvé

Algorithmes de tri

N/A
N/A
Protected

Academic year: 2022

Partager "Algorithmes de tri"

Copied!
2
0
0

Texte intégral

(1)

ISN – Lycée Saint Charles / Algorithmes de tri 1

Algorithmes de tri

1) Introduction

La fonction d’un algorithme de tri est d’organiser un ensemble de données selon un ordre déterminé. Généralement les données à trier sont des nombres ou des chaînes de caractère qui peuvent être triés numériquement ou

alphabétiquement.

Le tri est outil essentiel de l’informatique, plus particulièrement dans le domaine de la gestion et de l’analyse des données.

Il existe de nombreux type d’algorithmes, plus ou moins performants et plus ou moins complexes à mettre en œuvre. Parmi les principales caractéristiques qui permettent de différencier les algorithmes on peut citer : La complexité (temps maximum de traitement et temps moyen de traitement)

Les ressources nécessaires à son fonctionnement (en particulier en espace mémoire)

2) Différents algorithmes de tri

a. Tri par insertion

C’est le tri pratiqué intuitivement pour classer un jeu de cartes : il consiste de ranger toutes les cartes, l’une après l’autre, dans l’ordre de la donne au bon endroit parmi les cartes déjà triées.

Exemple d’algorithme pour un classement dans l’ordre croissant : Placer la première carte de la donne dans le tas trié

Pour chaque carte suivante :

Tant que la carte à classer est supérieure à la carte en cours du tas trié : Avancer à la carte suivante du tas trié

Fin tant que Fin chaque

Remarque : il faudra faire un test pour savoir s’il reste des cartes à classer

b. Tri par sélection

C’est également un tri intuitif utilisé pour classer les cartes : il consiste à traiter les cartes dans l’ordre où on souhaite les ranger, et non dans l’ordre de la donne.

Exemple d’algorithme pour un classement dans l’ordre croissant : Tant qu’il reste des cartes à classer :

Sélectionner la première carte du tas à trier : Pour chaque carte suivant du tas à trier :

Si cette carte est inférieure à la carte sélectionnée : Intervertir ces cartes

Fin si Fin chaque

Placer la carte sélectionnée à la suite du tas trié Fin tant que

(2)

ISN – Lycée Saint Charles / Algorithmes de tri 2

c. Tri à bulle

Le tri à bulles est un algorithme qui consiste à faire remonter progressivement les plus grands éléments

d'un tableau, comme les bulles d'air remontent à la surface d'un liquide. Ce tri est peu performant et il n’est donc quasiment pas utilisé en pratique.

d. Tri rapide ou « quick sort »

L’algorithme de tri rapide (« quick sort » en anglais) a été inventé dans les années 60. Il s’agit d’un algorithme de type dichotomique. Le principe est de séparer l’ensemble des données en deux parties. La séparation se fait par rapport à une valeur pivot, en deux ensembles de valeurs inférieures ou supérieures à la valeur pivot. Les deux ensembles sont ensuite traités séparément de la même manière.

3) Test des différents algorithmes

Trier la liste suivant avec un tri par insertion, un tri par sélection, un tri à bulle, un tri rapide : Dans chaque cas combien de comparaison a-t-on effectué ?

[61 , 1 , 25 , 33 , 70 , 20 , 34 , 19 68 , 79 , 64 , 24]

4) Visualisation de différents algorithmes

https://www.youtube.com/watch?v=ZZuD6iUe3Pc

Références

Documents relatifs

Fincher et Tenenberg (2005) montrent que les méthodes d’analyse sémantique, non automatisables dans le cas de tris ouverts, sont difficiles, voire impossibles, à mener sur un

Lorsqu’une base de données est très volumineuse et non ordonnée, trouver une information dans cette base est très long et très ingrat.. En effet la seule solution est

Dans le tri rapide, après les 2 tris partiels, tous les éléments de la partie gauche sont inférieurs au pivot, alors que tous les éléments de la partie droite... naturelle, et

[r]

Question : Est-il possible de trier un tableau de n ´el´ements en moins de n · log( n ) op´erations dans le pire cas. Non si on n’utilise que des comparaisons 2 `a 2 et sans

Tri du tableau T dans l’ordre croissant Affichage des valeurs triées Permutation de deux entiers Recherche de la position du

procedure saisie(var t:tab;var n:integer);.

La dichotomie (couper en deux) est un processus de recherche où à chaque étape l’espace de recherche se réduit à l’une des parties. Pour exécuter ce processus il faut que