Mozilla's getting a new look. What do you think? https://mzl.la/brandsurvey

Comparaison des algorithmes de tri

Ce articlé décrit un programe simple qui est utilisé dans deux des guides de l'outil Performance : le guide pour l'arbre d'appel et le guide pour le diagramme de flamme.

Ce programme compare les performances de trois algorithmes de tri différents :

  • le tri à bulles
  • le tri par sélection
  • le Ttri rapide

Ce programme est composé des fonctions suivantes :

sortAll() Fonction principale. génère itérativement (200 itérations) des tableaux aléatoires et appellesort().
sort() Appelle les fonctions bubbleSort(), selectionSort(), et quickSort() tour à tour et affiche le résultat.
bubbleSort() Implémente un tri à bulles, retourne le tableau trié
selectionSort() Implémente un par sélection retourne le tableau trié
quickSort() Implémente un tri rapide, retourne le tableau trié
swap() fonction d'aide pour bubbleSort() et selectionSort().
partition() fonction d'aide pour quickSort().

le graphique d'appel ressemble à ceci :

sortAll()                     // (génère un tableau aléatoire puis appelle sort) x 200

    -> sort()                 // tri le tableau avec chaque tri et affiche le résultat

        -> bubbleSort()

            -> swap()

        -> selectionSort()

            -> swap()

        -> quickSort()

            -> partition()

Les implémentations des algorithmes de tri dans ce programme ont été tirées du dépôt https://github.com/nzakas/computer-science-in-javascript/ et sont utilisées sous la licence MIT.

Vous pouvez tester ce programme d'exemple ici et cloner le code ici (soyez sûr de bien check out la branche gh-pages).

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : maximelore
 Dernière mise à jour par : maximelore,