На этом шаге рассмотрим реализацию алгоритма сортировки методом "пузырька" на простом примере.
Требуется отсортировать числовой массив по убыванию.
Рассмотрим один из возможных подходов к реализации алгоритма сортировки методом "пузырька" некоторого числового массива.
const n=20; var arr:array [1..n]of integer; i,j:byte; begin //Заполнение элементов массива значениями writeln('Исходный массив:'); for i:=1 to n do begin arr[i]:=random(n+1)-n div 2; write(arr[i]:5); end; writeln; writeln('Массив после сортировки:'); //Выполним n-1 проход по массиву for i:=1 to n-1 do //Рассмотрим элементы с 1 по n-i for j:=1 to n-i do //если в паре первый элемент меньше второго, //то меняем их местами if arr[j]<arr[j+1] then begin arr[j]:=arr[j]+arr[j+1]; arr[j+1]:=arr[j]-arr[j+1]; arr[j]:=arr[j]-arr[j+1]; end; //вывод отсортированного массива for i:=1 to n do write(arr[i]:5); end.
Архив с примером можно взять здесь.
На следующем шаге начнем рассматривать рекурсию.