1. Используя в качестве массива набор из 8 букв своей фамилии, имени, отчества, определить на каждом шаге в методе прямого выбора номера перемещаемых элементов.
Метод прямого выбора заключается в том, что в массиве находится наименьшее значение и оно перемещается в начало массива, а начальное значение в то место, откуда перемещается наименьшее. После этого, т.е. на следующем шаге сортировки, первый элемент уже не сравнивается.
Упорядочим массив из части фамилии: «ФИЛОНЕНК»
1) Ф И Л О Н Е Н К
Перемещаются 1 и 6 элементы
2) Е И Л О Н Ф Н К
Перемещаются 2 и 2 элементы, т.е. 2 элемент остается на месте.
3) Е И Л О Н Ф Н К
Перемещаются 3 и 8 элементы.
4) Е И К О Н Ф Н Л
Перемещаются 4 и 8 элементы.
5) Е И К Л Н Ф Н О
Перемещаются 5 и 5 элементы, т.е. 5 элемент остается на месте.
6) Е И К Л Н Ф Н О
Перемещаются 6 и 7 элементы.
7) Е И К Л Н Н Ф О
Перемещаются 7 и 8 элементы.
8) Е И К Л Н Н О Ф - конечная упорядоченная последовательность.
2. Используя в качестве массива набор из 8 букв своей фамилии, имени, отчества, определить на каждом шаге в методе шейкерной сортировки левую и правую границы сортируемой части массива (L и R).
Для данного задания возьмем имя и часть отчества. Массив из 8 элементов получиться «МАКСИМГЕ»
Шейкерная сортировка производиться с права на лево и с лева на право поочередно. Используется метод «пузырьковой сортировки», но при этом по той части массива, по которой не происходит передвижение будет считаться уже отсортированной. Минимальный элемент перемещается к началу массива, а Максимальный к концу. Границы рабочей части массива устанавливаются в месте последнего обмена.
1) I М А К С И М Г Е I (R=8,L=1)
М А К С И М ГЕ
М А К С И ГМ Е
М А К С ГИ М Е
М А К ГС И М Е
М А ГК С И М Е
М АГ К С И М Е
АМ Г К С И М Е
Читать дальше