Содержание
Задача о сортировке массива
Сортировкой или упорядочением массива называется расположение его элементов
Задача о сортировке массива
Сортировкой или упорядочением массива называется расположение его элементов
Если не все элементы различны, то надо говорить о неубывающем (или невозрастающем) порядке.
В теории алгоритмов задача сортировки носит канонический характер. Критерии оценки эффективности этих алгоритмов могут включать следующие параметры:
количество шагов алгоритма, необходимых для упорядочения;
количество сравнений элементов;
количество перестановок, выполняемых при сортировке.
известно множество алгоритмов сортировки, наиболее известным является метод «пузырька».
Сортировка пузырьком
Чтобы уяснить его идею, представьте , что массив (таблица) расположен
Сортировка пузырьком
Чтобы уяснить его идею, представьте , что массив (таблица) расположен
При первом проходе вдоль массива, начиная проход "снизу", берется первый элемент и поочередно сравнивается с последующими. При этом:
если встречается более "легкий" (с меньшим значением) элемент, то они меняются местами;
при встрече с более "тяжелым" элементом, последний становится "эталоном" для сравнения, и все следующие сравниваются с ним .
В результате наибольший элемент оказывается в самом верху массива.
program sort_puz;
const N=6;
var M: array [1..n] of integer;
i,j,r,k :integer;
procedure swap(var x,y: integer);
var t: integer;
Begin
t:= x; x:= y; y:= t;
end;
begin
write ('Укажите интервал от 0 до R='); readln (r);
writeln ('исходный массив');
for j:=1 to N do
begin
M[j]:=random(r+1);
write( 'M(',j,')=',M[j],' ');
end;
writeln;
writeln ('процесс сортировки');
for j:=1 to N-1 do
for i:=1 to N-j do
if M[i] > M[i+1] then
begin
swap(M[i],M[i+1]);
for k:=1 to N do write('M(',k,')=',M[k],' ');
writeln;
end;
writeln ('отсортированный массив');
for k:=1 to N do write( 'M(',k,')=',M[k],' ');
end.