Массив называется отсортированным по возрастанию, если для любых его элементов выполняется
условие a[i]<a[i+1]. Массив называется отсортированным по убыванию, если для любых его элементов выполняется условие a[i]>a[i+1].
Существует множество методов сортировки. Одни из них являются более эффективными, другие
проще для понимания. Достаточно простой для понимания является сортировка методом пузырька, который
также называют методом простого обмена. В чем же он заключается, и почему у него такое странное
название: «метод пузырька»?
Как известно воздух легче воды, поэтому пузырьки воздуха всплывают. Это просто аналогия. В
сортировке методом пузырька по возрастанию более легкие (с меньшим значением) элементы постепенно
«всплывают» в начало массива, а более тяжелые друг за другом опускаются на дно (в конец массива).
Алгоритм и особенности сортировки:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
const n = 10; { количество элементов в массиве } var a:array[1..n] of integer; i,j,buf:integer; begin {Заполняем массив случайными целыми числами от 0 до 50 и выводим массив на экран} for i:=1 to n do begin a[i]:=random(50); write(a[i]:3); end; { сортировка массива по возрастанию } for j:=1 to n-1 do for i:= 1 to n-j do {проверяем все элементы до предпоследнего неотсортированного} if a[i]>a[i+1] then { ищем элементы, которые стоят неправильно } begin { меняем элементы местами } buf:=a[i]; a[i]:=a[i+1]; a[i+1]:=buf; end; writeln; writeln('Массив после сортировки: '); for i:=1 to n do write(a[i],' '); end. |
| Категория: Pascal
| Тэги: сортировка