Цитата:
Сортировка выбором
На этот раз при просмотре мaccива мы будем искать наименьший элемент, Сравнивая его с первым. Если такой элемент найден, поменяем его местами с первым. Затем повторим эту операцию, но начнем не с первого элемента, а со второго. И будем продолжать подобным образом, пока не рассортируем весь массив.
|
или тут:
http://ru.wikipedia.org/wiki/%D0%A1%...80%D0%BE%D0%BC
Цитата:
Шаги алгоритма:
1. находим минимальное значение в текущем списке
2. производим обмен этого значения со значением на первой позиции
3. теперь сортируем хвост списка, исключив из рассмотрения уже отсортированный первый элемент
|
Код:
for i := 1 to n - 1 do
begin
min := i;
for j := i + 1 to n do
if a[min] > a[j] then
min := j;
t := a[i];
a[i] := a[min];
a[min] := t;
end;
Цитата:
Program sortirov_vibor;
var
m: array[1..5] of integer;
i: integer;
j: integer;
min: integer;
begin
For i:=1 to 5 do
begin
Writeln('Введите число последовательности N: ',i);
Readln(m[i]);
end;
for i := 1 to 4 do
begin
min := i;
for j := i + 1 to 5 do
if m[min] > m[j] then
min := j;
t := m[i];
m[i] := m[min];
m[min] := t;
end;
Writeln('Результат сортировки по возрастанию: ');
For i:=1 to 5 do
Writeln(m[i], ' ');
end.
|
Представь что у тебя в ряд стоят девушки с разными сумочками... )))))
Ты смотришь на каждую по очереди и сравниваешь с оставшимися в ряду у кого самая красивая сумочка.
Если нашла, то меняешь их местами.
В первый заход на первом месте оказыается девушка с самой красивой сумочкой.
Во второй на втором оказывается менее красивая сумочка и так далее.....
В последний заход ты сравниваешь сумочки девушек на предпоследнем и последнем месте в ряду.