Видео: Урок №1. Создание базы данных и отображение данных.
Одна из постоянно решаемых задач при работе с таким элементом программы, как массив – это упорядочивание содержащихся в нем членов в порядке возрастания либо убывания. Поиск решения проблемы, связанной с сортировкой массива – актуальная задача, стоящая сегодня как перед программистами, так и перед математиками-теоретиками.
При работе с массивами под сортировкой понимают процедуру перегруппировки существующего и определенного множества элементов в необходимом порядке. Довольно часто при работе с большими объемами данных программисты предпочитают производить не сортировку данных непосредственно, а проводить перегруппировку индексов элементов. При этом предполагается, что сортировка производится по требованиям определенной задачи, а значит, данный метод не является универсальным и носит специфический характер.
Задача сортировки является наряду с вопросами поиска фундаментальной в сфере разработки алгоритмов и программировании. Связано это с тем, что перегруппированные объекты – залог сокращения времени и ресурсов при работе программы, что, разумеется, носит исключительно положительный характер. Широкое применение в программировании нашла сортировка вставками и с помощью ключа.
Один из наиболее изящных методов сортировки – с применением специального ключа, т.е. раздела данных, который однозначно определяет порядок элементов, но при этом не хранит в себе полные значения элемента структуры. Проиллюстрировать данный метод можно с помощью почтового индекса. Индекс не предоставляет полных сведений об адресе, но при этом однозначно определяет месторасположение почтового отделения, а, следовательно, первичное перемещение письма. В случае массивов значения элемента и ключа совпадают.
Суть работы данного метода сортировки сводится к следующей схеме действий. Сначала создается новый массив данных, в который происходит последовательное копирование элементов исходного массива. При этом упорядочивание производится следующим образом: в конце созданного массива формируется ячейка, после чего производится анализ элемента, стоящего перед этой пустой ячейкой. Если элемент больше вставляемого, то происходит его сдвиг в пустую ячейку, а на его месте формируется новая. И таким образом происходит вычисление позиции, на которую необходимо перенести член старого массива. В случае, когда пустая ячейка оказывается первым элементом массива, в нее сразу производится перенос члена из предыдущего массива.
Сортировка вставками – также один из часто применимых методов упорядочивания членов последовательности. При этом сам по себе данный способ перегруппировки весьма прост и, что важно для программы, не требует выделения дополнительной памяти. Схема работы следующая: вначале берется пара расположенных рядом членов массива, и если первый элемент больше второго, то они меняются местами. И такая простая операция продолжается до тех пор, пока таких пар не будет обнаружено. Если алгоритм сортировки успешно завершился, все данные в массиве успешно отсортированы. Разумеется, что сортировка вставками возможна и в порядке убывания, и при этом требуется изменить условие перемещения элементов пары. Если первый член окажется меньше, чем второй, в паре происходит перегруппировка. Сортировка вставками – один из популярных алгоритмов сортировки массивов, который широко применяется при решении задач разного рода.
Сортировка методом вставки может быть улучшена по своим параметрам производительности. Для повышения функциональности производится изменение схемы поиска. В результате усовершенствования данной процедуры получен новый метод перегруппировки – сортировка бинарными вставками. Особенность этого метода состоит в применении двоичного поиска в массиве, в результате чего сокращается обрабатываемая алгоритмом последовательность.