09 Піраміди
-
Upload
oleksii-molchanovskyi -
Category
Education
-
view
2.562 -
download
2
Transcript of 09 Піраміди
![Page 1: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/1.jpg)
Розробка та аналіз алгоритмів
9. Піраміди
• Функціонування пірамід
• Пірамідальне сортування
• Черги з пріоритетами
(с) Олексій Молчановський, Prometheus.org.ua 1
![Page 2: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/2.jpg)
Означення піраміди
(с) Олексій Молчановський, Prometheus.org.ua 2
![Page 3: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/3.jpg)
Типи пірамід
(с) Олексій Молчановський, Prometheus.org.ua 3
![Page 4: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/4.jpg)
Основні операції
• Підтримка властивості піраміди – O(lgn)
• Створення піраміди – O(n)
• Пірамідальне сортування – O(n lgn)
• Використання піраміди в якості черги з пріоритетами – O(lgn)
(с) Олексій Молчановський, Prometheus.org.ua 4
![Page 5: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/5.jpg)
Підтримка властивості піраміди
(с) Олексій Молчановський, Prometheus.org.ua 5
![Page 6: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/6.jpg)
Підтримка властивості піраміди
(с) Олексій Молчановський, Prometheus.org.ua 6
![Page 7: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/7.jpg)
Створення піраміди
(с) Олексій Молчановський, Prometheus.org.ua 7
![Page 8: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/8.jpg)
Створення піраміди
(с) Олексій Молчановський, Prometheus.org.ua 8
![Page 9: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/9.jpg)
Створення піраміди
(с) Олексій Молчановський, Prometheus.org.ua 9
![Page 10: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/10.jpg)
Створення піраміди. Аналіз алгоритму
(с) Олексій Молчановський, Prometheus.org.ua 10
![Page 11: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/11.jpg)
Пірамідальне сортування
(с) Олексій Молчановський, Prometheus.org.ua 11
![Page 12: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/12.jpg)
Пірамідальне сортування
(с) Олексій Молчановський, Prometheus.org.ua 12
![Page 13: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/13.jpg)
Черги з пріоритетами
• Черга з пріоритетом – це множина S, в якій кожний елемент має ключ у вигляді числа
• Незростаюча черга• Приклад. Задачі (процеси) для виконання ОС. Задачі впорядковані за
спаданням пріоритетів
• Неспадна черга• Приклад. Події, які моделюються. Всі події впорядковані за зростанням
горизонту (часу) виконання
(с) Олексій Молчановський, Prometheus.org.ua 13
![Page 14: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/14.jpg)
Черги з пріоритетами. Базові операції
• Вставка елементу (Insert) – додає елемент до черги
• Визначення максимального елементу (Maximum) – повертає значення найбільшого елементу черги
• Видалення максимального елементу (ExtractMax) – видаляє та повертає найбільший елемент з черги
• Збільшення ключа для елементу (IncreaseKey) – збільшує значення ключа для заданого елементу черги
(с) Олексій Молчановський, Prometheus.org.ua 14
![Page 15: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/15.jpg)
Черги з пріоритетами. Базові операції
(с) Олексій Молчановський, Prometheus.org.ua 15
![Page 16: 09 Піраміди](https://reader030.fdocument.pub/reader030/viewer/2022032503/55be3a31bb61ebac458b4789/html5/thumbnails/16.jpg)
Черги з пріоритетами. Базові операції
(с) Олексій Молчановський, Prometheus.org.ua 16