RhrRbMLa9ZF6t
Zdjęcie przedstawia dłoń osoby zrywającą pomarańczę.

I_P+R_W14_M11_Java Sortowanie przez wybieranie

Źródło: Brienne Hong, domena publiczna.

Algorytm w pseudokodzie

Zanim przejdziemy do przełożenia opisanego algorytmu na  język Java, przedstawimy go w postaci pseudokodu. Załóżmy, że sortujemy zbiór liczb w porządku rosnącym.

Użyjemy przy tym mechanizmu pętli zagnieżdżonych. Pierwsza z nich, zewnętrzna, będzie odpowiadać za wskazywanie kolejnych pozycji w tablicy. Zapełnimy je liczbami o coraz większych wartościach.

O tym, która liczba powinna znaleźć się w miejscu wskazanym przez zewnętrzną pętlę, poinformuje nas pętla wewnętrzna. Dzięki niej wyszukamy najmniejsze liczby w nieposortowanej części tablicy.

Zaczniemy od zdefiniowania zmiennych. Będzie nam potrzebna tablica zawierająca elementy do posortowania:

Linia 1. zbior otwórz nawias kwadratowy zamknij nawias kwadratowy znak równości tablica o rozmiarze n.

Następnie tworzymy pierwszą, zewnętrzną pętlę. Wskaże ona kolejne elementy tablicy oprócz ostatniego. Jeżeli poprzednie liczby zostaną ułożone we właściwym porządku, to ostatnia na pewno znajdzie się tam, gdzie być powinna.

Linia 1. zbior otwórz nawias kwadratowy zamknij nawias kwadratowy znak równości tablica o rozmiarze n. Linia 3. dla i znak równości 0 przecinek 1 przecinek kropka kropka kropka przecinek długość otwórz nawias okrągły zbior zamknij nawias okrągły minus 1 wykonuj.

Dla każdej wartości i należy przeszukać nieposortowaną część tablicy i znaleźć element, który powinien zostać umieszczony w miejscu wskazywanym przez zmienną i. W pierwszym cyklu będzie to pierwsze miejsce tablicy, w drugim drugie itd.