Слайд 8
ЧТО ДАЛЬШЕ ?
Поменяем местами голубой и лиловый прямоугольники.
Слайд 14
Все прямоугольники расположены в порядке увеличения
Слайд 15
Необходимость отсортировать какие-либо величины возникает в программировании очень
часто.
Существует разные способы сортировки массивов.
Задача этого урока – рассмотреть
алгоритм сортировки массива по возрастанию.
Слайд 16
Сформулируйте определение сортировки
Слайд 17
Сортировка - это процесс упорядочения заданного множества объектов
в некотором, заранее определённом порядке.
Слайд 18
Рассмотрим один из алгоритмов сортировки
Слайд 19
Сортировка обменом
«пузырьковая» сортировка
Принцип метода:
Слева на право поочерёдно сравниваются
два соседних элемента,
Слайд 20
Сортировка обменом
«пузырьковая» сортировка
Если их взаимное расположение не соответствует
заданному условию упорядоченности, то они меняются местами
Слайд 21
Сортировка обменом
«пузырьковая» сортировка
Далее берутся два следующих соседних элемента
и так до конца массива
Слайд 22
Сортировка обменом
«пузырьковая» сортировка
После одного прохода на последней n-ой
позиции массива будет стоять максимальный элемент
(«всплыл» первый «пузырёк»)
Слайд 23
Сортировка обменом
«пузырьковая» сортировка
Поскольку максимальный элемент уже стоит на
своей последней позиции, то второй проход обменов выполнятся до
n-1 – го элемента.
Слайд 24
Для реализации этого метода сортировки будем использовать алгоритм
перестановки
11
11
5
C:=A
А
В
С
Слайд 25
Сортировка обменом
«пузырьковая» сортировка
11
11
5
А
В
С
Слайд 26
Сортировка обменом
«пузырьковая» сортировка
5
11
5
A:=B
А
В
С
Слайд 27
Сортировка обменом
«пузырьковая» сортировка
5
11
5
B:=C
А
В
С
Слайд 29
Сортировка обменом
«пузырьковая» сортировка
Схема алгоритма:
1
Слайд 30
Сортировка обменом
«пузырьковая» сортировка
2
Слайд 31
Сортировка обменом
«пузырьковая» сортировка
3
! Первый и второй элементы стоят
на своих местах
Слайд 32
Сортировка обменом
«пузырьковая» сортировка
4
В результате перестановок мы получим отсортированный
по возрастанию массив
Слайд 34
Данный массив отсортирован по не убыванию
Данный массив отсортирован
по возрастанию
Слайд 35
Данный массив отсортирован по убыванию
Данный массив отсортирован по
не возрастанию
Слайд 36
Программа на Pascal
i:=1;
repeat
if
Vector[i]> Vector[i+1] then
begin
B:=Vector[i];
Vector[i]:=Vector[i+1];
Vector[i+1]:= B;
end;
i:=i+1;
until i>5-k;
Слайд 37
Программа на Pascal
for k:=1 to 4 do
begin
i:=1;
repeat
if Vector[i]> Vector[i+1] then
begin
B:=Vector[i];
Vector[i]:=Vector[i+1];
Vector[i+1]:= B;
end;
i:=i+1;
until i>5 - k;
end;