Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
final.docx
Скачиваний:
10
Добавлен:
14.07.2019
Размер:
71.28 Кб
Скачать
  1. Дайте визначення такої структури даних як «черга за пріоритетом», наведіть її представлення і реалізацію.

Пірамідальна сортування базується на обробці такої структури даних як черга за пріоритетом. Черга за пріоритетом - це структура даних, в якій елементи мають ключ і вставляються в кінець набору даних, а видаляються елементи з найбільшим значенням ключа. Застосування: системи планування завдань (ключ являє собою значення пріоритету). Реалізація операцій вставки і видалення дуже сильно залежать від уявлення набору даних: впорядкований або невпорядкований, у вигляді масиву або пов'язаного списку. Неупорядковане подання визначає «ледачий» підхід до вирішення завдання з видалення елемента (коли виконання роботи відкладається до необхідного моменту). Упорядковане представлення - «енергійний» підхід (коли заздалегідь виконується необхідний обсяг робіт, щоб забезпечити максимальну ефективність реалізації операції видалення). Сортувальне дерево - це сукупність вузлів з ключами, що утворюють повне пірамідально впорядковане бінарне дерево, представлене у вигляді масиву. Повне пірамідально впорядковане бінарне дерево - це структура, в якій кожен вузол містить ключ зі значенням більшим чи рівним значення ключів вузлів-нащадків (ключ в кожному вузлі дерева менше або дорівнює ключа вузла, який є батьком даного вузла). При формуванні такого дерева витримується наступний порядок: 1. Створюється кореневий вузол 2. Спускаючись вниз, переміщуються зліва направо, додаючи кожному вузлу попереднього рівня за два вузли поточного рівня.

  1. Опишіть сутність базового алгоритму пірамідального сортування, наведіть відмінності у реалізації з чергою за пріоритетом.

Метод пірамідальної сортування Суть - реалізація операції вставки і видалення засновані на методі низхідній установки (сортування виконується без створення додаткової структури - черги за пріоритетом; побудова сортують дерева виконується проходженням у зворотному порядку). Кожна позиція масиву розглядається як корінь невеликого дерева і два нащадка це вузла (два піддерева) представляють собою сортують дерева. Спочатку перегляд сортованого масиву даних починається з половини і далі проглядається масив у зворотному порядку.

  1. Опишіть сутність групи алгоритмів порозрядного сортування, їх особливості, приклад.

Кожен ключ представляється в двійковому вигляді. Замість того, щоб порівнювати 2 ключі, перевіряються чи рівні 0 або 1 окремі розряди ключа. Дуже нагадує швидку сортування. Послідовність сортується за старшим значемому двійковому розряду так, щоб всі ключі починаються з 0 опинилися перед усіма ключами починаються з 1. Для цього необхідно знайти крайній зліва ключ Ki начіющійся з 1 і крайній праворуч ключ Kj начіющійся з 0. Після чого Ki і Kj міняються місцями і процес буде повторяться поки не вийде i> j. Нехай F0 безліч елементів починаються з 0, F1 безліч всіх інших елементів. Будемо до F0 застосовувати поразрядное сортування (почавши тепер з другого біта зліва, а не зі старшого) до тих пір поки безліч F0 повністю не розсортуй. Потім проробимо теж саме з F1. Суть-використання методу расспределенного підрахунку для сортування цифр ключів. Для більш ефективної работивозможнодобавленіе сотріровкі вставками, якщо кількість цифр, що залишились ключів менше деякого встановленого значення.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]