 |
Publicité
|
Troisième article d'une série de cinq présentant différentes méthodes de tri. Nous expliquons ici la méthode dite du "tri dichotomique". Toutes ces procédures seront téléchargeables avec l'interface de comparaison (article 5).
Rappelons les cinq méthodes étudiées dans ces articles:
Le tri dichotomique :
Les explications sont données pour le tri croissant.
Le principe est simple, on prend l'élément N du tableau, et on le compare aux éléments 1 à N - 1 du même tableau. On en déduit la position M qu'il devrait occupé et on décale tous les éléments M à N - 1 (ex: M prend la position M + 1) puis on place l'élément de dépard à la position M.
On effectue cette opération pour tous les éléments de 2 jusqu'à Nb_élément.
Source:
Sub Tri_Dichotomique(ByVal Nb_Element As Long, Tableau() As Variant, ByVal Sens As Boolean)
' le paramètre Nb_Element correspond au nombre d'éléments du tableau, sa valeur n'est donc pas modifiée
' le paramètre Tableau() est le tableau à trier, il est modifié puis retourné
' le paramètre Sens est vrai pour un tri croissant
Dim P As Long
' P représente la position à laquelle il faut placer l'élément à classé
Dim I As Long
Dim J As Long
' I et J sont des variables intermédiaires utilisées pour les compteurs de boucles
Dim Ligne_Tampon As Variant
' Ligne_Tampon est une variable intermédiaire utilisée pour la permutation d'éléments
' On effectue l'opération pour tous les éléments
For I = 2 To Nb_Element
Next I
End Sub
Private Function DichoPlacer(I As Long, Tableau() As Variant, ByVal Sens As Boolean) As Long
End Function
|