Sub Selectionsort (List() As Long, min As Integer, _
max As Integer) Dim i As Integer Dim j As Integer Dim best_value As Long Dim best_j As Integer For i = min To max - 1 best_value = List(i) best_j = i For j = i + 1 To max If List(j) < best_value Then best_value = List(j) best_j = j End If Next j List(best_j) = List(i) List(i) = best_value Next i End Sub Selectionsort e' un algoritmo molto semplice. Dal principio cerchi nella lista l'elemento piu' piccolo. Poi scambi quell'elemento con l'elemento in cima alla lista. Poi trovi il secondo elemento piu' piccolo e lo scambi con il secondo elemento della lista. Continui a trovare i successivi elementi piu' piccoli e a metterli nella loro posizione finale, fino a quando tutti gli elementi della lista stanno al loro posto. Il codice VB per Selectionsort e' mostrato di seguito: |