Bonjour.
j'aimerais savoir si Vb inclus une fonction de tri de liste (tableaux à 1 colonne) numériques (type integer) et, si c'est le cas, comment cell-ci s'apelle t'elle. (he oui, j'ai aussi des lacunes).
Merci
Bonjour.
j'aimerais savoir si Vb inclus une fonction de tri de liste (tableaux à 1 colonne) numériques (type integer) et, si c'est le cas, comment cell-ci s'apelle t'elle. (he oui, j'ai aussi des lacunes).
Merci
bon, ben finalement, j'ai reprogrammé le quicksort qui étais dans la section algorithmie (il étais en c):merci et salut
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 Public Function QUICKSORT(ByRef Tableau() As Integer, Optional ByVal Debut As Integer = -1, _ Optional ByVal Fin As Integer = -1) 'attention, ne pas avoir un tableau avec des indices négatifs. If Debut = -1 Then Debut = LBound(Tableau, 1) If Fin = -1 Then Fin = UBound(Tableau, 1) Dim Pivot As Integer Dim Gauche As Integer Dim Droite As Integer Dim temp As Integer Pivot = Debut Gauche = Debut Droite = Fin Do If Tableau(Gauche) >= Tableau(Droite) Then temp = Tableau(Gauche) Tableau(Gauche) = Tableau(Droite) Tableau(Droite) = temp Pivot = Gauche + Droite - Pivot End If If Pivot = Gauche Then Droite = Droite - 1 Else Gauche = Gauche + 1 End If DoEvents Loop Until Gauche = Droite If Debut < Gauche - 1 Then QUICKSORT Tableau, Debut, Gauche - 1 If Fin > Droite + 1 Then QUICKSORT Tableau, Droite + 1, Fin End Function![]()
Oups! j'ai corrigé une petite erreur.
le procédure est incroyablement rapide! (- d'une seconde pour 10 000 chiffres...) on pourait déclarer tout en variant et mettre dans la faq, ça éviterais à certains de créer une listbox pour ça...
salut![]()
Partager