Pouvez-vous aider à tracer l'algorithme de tri rapide pour le tableau contenant ces éléments ?

1 Réponses


  • Ma compréhension du tri rapide est que vous comparez une entrée du tableau à d'autres entrées et si l'entrée comparée est supérieure ou inférieure à la première entrée, selon que vous souhaitez trier par ordre croissant ou décroissant, vous échangez leurs positions.
    Il existe deux méthodes courantes, l'une fonctionne en place et ne nécessite aucun autre stockage et l'autre fonctionne avec deux baies, la plus grande que la baie et la plus petite.
    La méthode que vous avez choisie doit être basée sur la quantité de stockage avec laquelle vous devez travailler. Dans une petite liste comme celle que vous avez, j'utiliserais la version en place.
    Donc en gros (tri décroissant) comparez 65 à 70, 70 est plus grand alors échangez les nombres. Étant donné que tous ces nombres sont inférieurs à 255, ils peuvent tenir dans un seul octet et être échangés avec trois instructions machine appelées "exclusive ou". Dans la plupart des langages assembleur, il est codé comme "xor" ou "xr".
    Puisque nous avons échangé 70 et 65, nous commençons à comparer 70 aux entrées en dessous. Maintenant, nous comparerions 70 et 75. 75 est plus grand, alors échangez à nouveau et commencez à comparer 75. Lorsque vous avez parcouru toute la liste sans échange, la liste est triée.

Ecrivez votre réponse

Votre réponse apparaîtra après modération