Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛЕКЦІї.docx
Скачиваний:
37
Добавлен:
10.11.2018
Размер:
280.19 Кб
Скачать

Контрольні запитання

1. Яке дерево називається кореневим? (а)є одна особлива вершина, в яку не заходить ні одне ребро і яку називають коренем дерева;б) у всі інші вершини заходить рівно одне ребро, а виходить скільки завгодно;в) немає циклів.)

2. Що називають степеню вершини? (а) число піддерев; б) кількість листків; в) рівень вершини.)

3. Чому дорівнює степінь листка? (а) 0; б)кількості рівнів вершини; в) висоті дерева.)

4. Що таке довжина шляху? (а)кількість дуг, які треба пройти від кореня для досягнення даної вершини; б) кількість піддерев даної вершини; в) ранг вершини.)

5. Що таке рівень, aбo ранг, вершини дерева? (а) довжи­на шляху від кореня до цієї вершини плюс одиниця; б) кількість дуг, які треба пройти від кореня для досягнення даної вершини; в) кількість піддерев даної вершини.)

6. Який ранг має корінь дерева? (а)3; б)2; в)7.)

7. Яка висота дерев, зображених на рис? (а) 3,5; б)2,4; в)2,3.)

8. Що таке висота дерева? (а) кількість рівнів у дереві; б)кількість листків; в) кількість дуг, які треба пройти від кореня для досягнення даної вершини.)

9. Як описується вершина-"син"у позиційному дереві? (а) за допомогою рядка символів над алфавітом {0, 1}; б) цифрами; в)формулою.)

10. Які існують алгоритми обходу дерев?(а) низхідний, висхідний, змішаний; б)паралельний; в) бінарний; г) зверху вниз, знизу вверх, зліва направо.)

11. Що таке бінарне дерево? (а) 2-арне дерево, в якого один потомок є лівим, а другий – правим; б)висота якого дорівнює 2; що має два кореня.)

12. Яке дерево називають збалансованим? (а) різниця між рівнями всяких двох вершин не більша від одиниці; б) має однакову кількість лівих і правих піддерев;)

13. Способи зображення графів в пам‘яті ЕОМ: а)матриці; б) спискові структури; в)динамічні списки.)

14. Які способи зображення дерев в пам‘яті ЕОМ є оптимальними: а) матриця; б) список; в) таблиця)

15. Сортування на деревах. Метод вибірки з дерева.

Лекція 7 лінійні структури даних

1. Стеки, черги, деки

Стеки, черги і деки - це однотипні лінійні структури. Їх називають динамічними лінійними структурами даних у зв'язку з тим, що вибірка елемента із цих послідовностей зводиться до операції виключення, тобто ліквідації його у послідовностях. Відрізняються ці структури одна від одної порядком виконання операцій включення і виключення елементів .

До основних операцій над цими структурами відносять:

а) створення нової структури даних;

б) запис або включення елемента у вже існуючу структуру даних;

в) виключення елемента зі структури;

г) перевірка умови існування структури.

1.1. Стеки

Стек - це впорядкована лінійна динамічно змінювана послідовність елементів, в якій виконуються наступні умови:

1) новий елемент приєднуєть­ся завжди до одного і того ж боку послідовності;

2) доступ до елемента здійснюється завжди з того боку послідовності, до якого приєднується елемент;

3) елемент зберігається в послідовності до моменту його виклику.

Прикладом стеку є стопка тарілок, а також магазин патронів у рушниці. За аналогією з останнім прикладом стек ще часто називають магазинною пам'яттю.

Операцію включення елемента у стек називають "проштовхуванням", а операцію виключення із послідовності - "виштовхуванням". Найбільш і найменш доступні елементи стека навивають відповідно верхом і низом стека. Операції включення і виключення зі стека виконують в одному і тому ж боку послідовності, але виключаються елементи зі стека в порядку, зворотному до того, в якому вони потрапили в послідовність. В кожний момент часу зі стека можна забрати лише один елемент. Дисципліну обслуговування стека часто називають дисципліною LIFO - "останній прийшов, перший пішов".

Стек можна зобразити у вигляді послідовності A=A1,...,An-1,An , де An - елемент, що вказує на вхід-вихід у послідовність; A1 , An - відповідно низ і верх стека. Щоб прочитати елемент Aj , необхідно вибрати зі стека елементи An,..., Aj+1.

Основною перевагою стека перед іншими організаціями даних є те, що у ньому не потрібна адресація елементів. Для обслуговування стека потрібно лише дві команди: PUSH - "проштовхнути" i POP - "виштовхнути". Зі стеком пов'язаний завжди один вказівник, який вказує на верхній елемент у стеку. На початку такий вказівник дорівнює нулю.

Найпростішим прикладом вдалого застосування стека може служити задача перепису вектора у зворотному порядну. На практиці стекова структура даних найчастіше застосовується в рекурсивних алгоритмах, при трансляції, а також при обробці переривань програм.

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