Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы алгоритмизации и языки программирования.doc
Скачиваний:
347
Добавлен:
02.05.2014
Размер:
571.39 Кб
Скачать

2 Сортировка данных.

Сортировка - важная часть вычислительной математики и отнимает значительную часть времени работы компьютера. Сортировка относится к алгоритмам обработки таблиц (массивов) любого типа.

Сортировка данных - это обработка информации, в результате которой элементы ее (записи) располагаются в определенной последовательности в зависимости от значения некоторых признаков элементов этой информации.

Наиболее распространенным видом сортировки данных является упорядочение массива - расположение записей сортируемого массива данных в порядке монотонного изменения некоторого ключевого признака. Сортировка данных позволяет сократить во много раз продолжительность решения задач, которые связаны с обработкой больших массивов информации. С отсортированными данными легче работать. Когда элементы отсортированы, как в телефонном справочнике, их проще найти, обновить, исключить.

Смысл любой сортировки заключается в перестановке элементов таблицы в определенном заданном порядке. Упорядочение осуществляется в процессе многократного просмотра исходного массива. Обычно методы сортировки подразделяют на два класса:

- внутренняя сортировка, когда все записи хранятся в быстрой оперативной памяти;

- внешняя сортировка, когда все записи в ней не помещаются.

Методы внутренней сортировки обеспечивают большую гибкость при построении структур данных и доступа к ним. Для внутренней сортировки характерно небольшое количество записей и весь процесс можно провести в оперативной памяти компьютера с большим быстродействием.

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

Невозможно назвать алгоритм сортировки универсально наилучшим в любой ситуации. Имеется много наилучших способов, но только в случаях, когда известно, что сортируется и с какой целью. Эффективность алгоритма зависит от множества факторов:

– количества элементов, участвующих в сортировке;

– возможности помещения всех элементов в доступную область или в доступный интервал;

– степени первоначальной отсортированности элементов;

– диапазона и распределения значений сортируемых элементов;

– записи элементов в файл или массив;

– предположения, будут ли элементы периодически исключаться или дополняться;

– возможности сравнения элементов параллельно.

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

Сортировка символьной (текстовой) информации заключается в упорядочении значений (текстовых строк) по алфавиту.

Метод сортировки является устойчивым, если относительный порядок элементов с равными значениями не меняется после упорядочения. Сортировку можно рассматривать и как самостоятельную задачу (например, для получения упорядоченного по алфавиту списка сотрудников какого-либо учреждения), и как вспомогательную – для облегчения последующего поиска элементов в упорядоченной таблице или массиве.

Соседние файлы в предмете Алгоритмы