Le tri est un problème très classique de réorganisation des données (qui peuvent être comparées, par exemple des nombres entiers, des nombres à virgule flottante, des chaînes de caractères, etc.) d’un tableau (ou d’une liste) dans un certain ordre (croissant, non décroissant, décroissant, non croissant, lexicographique, etc.)
Il existe de nombreux algorithmes de tri différents, chacun ayant ses propres avantages et limites.
Le tri à bulles
L’algorithme de tri à bulles (ou Bubble Sort Algorithm) commence au début de l’ensemble de données. Il compare les deux premières valeurs, et si la première est supérieure à la seconde, il les échange. Il continue à le faire pour chaque paire de valeurs adjacentes jusqu’à la fin de l’ensemble de données. Il recommence ensuite avec les deux premiers éléments, en répétant jusqu’à ce qu’aucun échange n’ait eu lieu lors de la dernière passe.
Cet algorithme est particulièrement utile lorsque vous avez besoin de trouver les x valeurs les plus élevées d’une liste.
Vous pouvez lire toute la théorie du monde sur les algorithmes de tri, mais voir ces structures en action peut vraiment vous faire avancer. Si vous êtes le genre de programmeur qui apprend mieux avec des images plutôt qu’avec des mots, consultez VisualAlgo
Avec VisualAlgo, vous pouvez créer votre propre liste de nombre et visualiser simultanément le résultat du tri et l’évolution étape par étape algorithme de tri à bulles
VisualAlgo est un outil de visualisation d’algorithmes
VisualAlgo est un outil de visualisation d’algorithmes basé sur le web sans qu’il soit nécessaire d’installer un logiciel supplémentaire.
Il utilise les dernières technologies web : HTML5, CSS3, JavaScript.
Il permet aux utilisateurs de spécifier leurs propres entrées d’algorithme et la visualisation fonctionnera sur avec ces entrées. Il s’agit d’une collection de visualisations d’algorithmes avec une interface unifiée.
La visualisation est très efficace pour comprendre l’algorithme, et il en va de même pour comprendre la visualisation du programme. Ainsi, au fur et à mesure que la compréhension des algorithmes et de la programmation progresse, le site “VisualAlgo” permet d’apprendre simultanément les algorithmes et la programmation en visualisant le code du programme qui décrit l’algorithme en une seule fois.
Le site est interactif, vous pouvez donc choisir ou insérer des éléments dans la collection d’exemples et de regarder comment elle fonctionne visuellement.
Le coin supérieur gauche fournit généralement une explication de ce qui se passe, tandis qu’un pseudo-code apparaît en bas à droite.
C’est un très bon outil pour visualiser les concepts de structure de données et les algorithmes.
Pour aller plus loin
Pour approfondir cette notion, et développer vos compétences vous pouvez consulter cette ouvrage.