'Primer 12b: sortiranje izborom (selection sort) 'Metoda uzastopnih minimuma Sub selectionSort(niz() As Integer, ByVal n As Integer) Dim i As Integer 'Brojac Dim j As Integer 'Brojac Dim p As Integer ' Pomocna promenljiva za zamenu For i = 1 To n - 1 'odredjujemo minimum redom od 1. do (n-1). pozicije For j = i + 1 To n 'i-tu poziciju uporedjujemo sa svim ostalima If niz(j) < niz(i) Then p = niz(i) niz(i) = niz(j) niz(j) = p End If Next j Next i End Sub 'efikasnija verzija sa manje zamena Sub selectionSort2(niz() As Integer, ByVal n As Integer) Dim i As Integer, j As Integer 'Brojaci Dim indeksNajmanjeg As Integer Dim p As Integer ' Pomocna promenljiva za zamenu For i = 1 To n - 1 'odredjujemo minimum redom od 1. do (n-1). pozicije indeksNajmanjeg = i For j = i + 1 To n 'i-tu poziciju uporedjujemo sa svim ostalima If niz(j) < niz(indeksNajmanjeg) Then indeksNajmanjeg = j End If Next j 'zamenu radimo tek kad znamo ko je i-ti najmanji p = niz(i) niz(i) = niz(indeksNajmanjeg) niz(indeksNajmanjeg) = p Next i End Sub