0/5 (3 avis)
Snippet vu 9 396 fois - Téléchargée 40 fois
Public Sub Quicksort(list() As String, ByVal min As Long, _ ByVal max As Long) Dim med_value As String Dim hi As Long Dim lo As Long Dim i As Long ' If min >= max, the list contains 0 or 1 items so it ' is sorted. If min >= max Then Exit Sub ' Pick the dividing value. i = Int((max - min + 1) * Rnd + min) med_value = list(i) ' Swap it to the front. list(i) = list(min) lo = min hi = max Do ' Look down from hi for a value < med_value. Do While list(hi) >= med_value hi = hi - 1 If hi <= lo Then Exit Do Loop If hi <= lo Then list(lo) = med_value Exit Do End If ' Swap the lo and hi values. list(lo) = list(hi) ' Look up from lo for a value >= med_value. lo = lo + 1 Do While list(lo) < med_value lo = lo + 1 If lo >= hi Then Exit Do Loop If lo >= hi Then lo = hi list(hi) = med_value Exit Do End If ' Swap the lo and hi values. list(hi) = list(lo) Loop ' Sort the two sublists. Quicksort list(), min, lo - 1 Quicksort list(), lo + 1, max End Sub
22 mars 2005 à 11:05
14 janv. 2003 à 10:41
call quickSort(Montableau,0,ubound(Tableau))
Bon, l
14 janv. 2003 à 04:23
' MonTableau=Tableau de String
call QuickSort monTableau???
t'es sur ? sur mon ordi ça marche pa...
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.