Сортировка простым извлечением.

Лабораторная работа №8. Методы сортировки.

 

Теоретическая часть

 

Сортировка – это процесс упорядочения некоторого множества элементов, на котором определены отношения порядка >, <, ≥, ≤, =. Когда говорят о сортировке, подразумевают упорядочение множества элементов по возрастанию или убыванию. В случае наличия элементов с одинаковыми значениями, в упорядоченной последовательности они располагаются рядом друг с другом в любом порядке.

Различают внутреннюю сортировку, в которой предполагается, что данные находятся в оперативной памяти, и важно оптимизировать число действий программы, и внешнюю, в которой данные хранятся на внешнем устройстве с медленным доступом (диск, лента и т. д.) и, прежде всего, надо уменьшить число обращений к этому устройству.

При дальнейшем рассмотрении внутренней сортировки определим, что множество данных, которые упорядочиваются, описывается как массив фиксированной длины целых чисел:

int A[5];

Сортировка простым извлечением.

 

В этом методе массив делится на уже отсортированную часть A[i +1], A[i+1], ..., A[n] и еще не отсортированную A[0], A[1], ..., A[i].

Из неотсортированной части на каждом шаге извлекается максимальный элемент, просматривая ее заново на каждом шаге. Этот элемент будет минимальным элементом отсортированной части, так как все большие его элементы были извлечены на предыдущих шагах, поэтому ставим извлеченный элемент в начало отсортированной части, точнее меняем его с A[i ] местами (рисунок 1).

Рисунок 1. Сортировка простым включением.

Листинг алгоритма: