|
  Sortowanie przez wybór polega na wyszukiwaniu w zbiorze elementów elementu np. najmniejszego i umieszczanie go na pierwszym miejscu w ciągu, wymieniając z elementem tam się znajdującym. W podobny sposób postępujemy z pozostałymi elementami zbioru. Z pozostałych elementów ponownie wyszukujemy element najmniejszy i zamieniamy go z elementem na drugiej pozycji, itd. Założenie: ciąg liczb do sortowania: 4,1,6,3 Realizacja:     4 1 6 3 - wyszukujemy element najmniejszy - jest to liczba 1, wymieniamy ją z pierwszą    liczbą ciągu ( z liczbą 4)     1 4 6 3       1 | 4 6 3 - z pozostałych wyszukujemy element najmniejszy - jest to liczba 3,     wymieniamy ją z drugą ( z liczbą 4)     1 3 | 6 4 itd. Przykładowa realizacja ww. algorytmu w języku Turbo Pascal: program sortowanie_przez_wybor; uses crt; const n=10; var  tab: array[1..n] of integer;  i,j,k,min:integer; begin  clrscr;  writeln('Sortowanie przez wybor');  for i:=1 to n do readln(tab[i]);  writeln('Liczby przed sortowaniem:');  for i:=1 to n do write(tab[i]);  for j:=1 to n-1 do  begin    min:=j;    for i:= j+1 to n do      if tab[i] < tab[min] then min:= i;      k:=tab[min];      tab[min]:=tab[j];      tab[j]:=k;  end;  writeln('Liczby po sortowaniu:');  for i:=1 to n do write(tab[i]);  repeat until keypressed; end.
|