Методы сортировки массивов

Методы сортировки массивов



Сортировка массива методом "Выбора"


Сортировка массива методом "Вставки"

Сортировка вставками - достаточно простой алгоритм. Как в и любом другом алгоритме сортировки, с увеличением размера сортируемого массива увеличивается и время сортировки. Основным преимуществом алгоритма сортировки вставками является возможность сортировать массив по мере его получения.То есть имея часть массива, можно начинать его сортировать. В параллельном программирование такая особенность играет не маловажную роль.

Сортируемый массив можно разделить на две части - отсортированная часть и неотсортированная. В начале сортировки первый элемент массива считается отсортированным, все остальные - не отсортированные. Начиная со второго элемента массива и заканчивая последним, алгоритм вставляет неотсортированный элемент массива в нужную позицию в отсортированной части массива. Таким образом, за один шаг сортировки отсортированная часть массива увеличивается на один элемент, а неотсортированная часть массива уменьшается на один элемент. Рассмотрим пример сортировки по возрастанию массива из 7 чисел (см. Таблица 1):
исходный массив: 3 3 7 1 2 5 0

Таблица 1 - Сортировка вставками
шаг отсортированная часть массива тек. элемент вставка
1 3 3 false
2 3 3 7 false
3 3 3 7 1 true
4 1 3 3 7 2 true
5 1 2 3 3 7 5 true
6 1 2 3 3 5 7 0 true
- 0 1 2 3 3 5 7 - -

На каждом шаге сортировки сравнивается текущий элемент со всеми элементами в отсортированной части. На первом шаге сравнивается тройка с тройкой, они равны поэтому не меняем их местами. На втором шаге сравниваем 7 с двумя тройками, 7 > 3 а так как сортировка по возрастанию, то опять элементы массива остаются на своих местах. На третьем шаге единица сравнивается с тремя элементами и все они больше единицы, значит единицу вставляем на первое место, в начало массива. На четвёртом шаге текущий элемент - 2 сравниваем с элементами 1, 3, 3, 7. Получается, что  1 < 2 < 3 и 7 поэтому двойку вставляем между единицей и тройкой. Пятый и шестой шаги выполняются точно также. В итоге на шестом шагу мы получаем отсортированный по возрастанию массив.


Рейтинг

Проблемы с госуслугами, медленный интернет или плохая связь? Напишите об этом — Минцифры поможет с решением