Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OРГАНІЗАЦІЯ БАЗ ДАНИХ І ЗНАНЬ-ЛЕКЦІЯ.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
815.1 Кб
Скачать

Ієрархічна (деревовидна) структура даних

Деревоподібна (ієрархічна) структура (рис.3.1), або дерево - це зв'язний неорієнтований граф, що не містить циклів, тобто петель з замкнутих шляхів.

Як правило, при роботі з деревом виділяють будь-яку конкретну верхівку (початок) та визначають її як коріння дерева. В цю верхівку не заходить жодне ребро. В цьому випадку дерево стає орієнтованим. Орієнтація на кореневому дереві визначається або від коріння, або до коріння.

Рисунок 3.1 Ієрархічна структура даних

Кореневе дерево можна визначити таким чином:

  1. є єдиний особливий вузол, який називається корінням, в який не заходить жодне ребро;

  2. в усі інші вузли заходить тільки одне ребро, а виходить довільна (0, 1, 2,..., п) кількість ребер;

  3. не існує циклів.

З визначення випливає, що будь-який вузол дерева є корінням деякого піддерева, що міститься в повному дереві. Число піддерев вузла називають ступенем вузла. Вузол називається кінцевим, якщо він має нульову ступінь. Інколи кінцеві вузли називають листками, а ребра - гілками. Кожний вузол, крім кореневого, зв'язаний з одним вузлом на більш високому рівні ієрархії і називається вихідним. Кожний вузол може бути зв'язаний з одним або декількома вузлами на більш низькому рівні і називається породженим.

Якщо кожний вузол має однакову кількість гілок, причому процес включення нових гілок іде зверху вниз, а на кожному рівні дерева - зліва направо, то таке дерево називається збалансованим (рис. 3.2,а). Для збалансованих дерев фізична організація даних суттєво спрощується. До особливої категорії дерев відносять двійкове (бінарне) дерево. Це дерево має не більше як дві гілки, які виходять з одного вузла. Двійкові дерева можуть бути як збалансованими, так і незбалансованими (рис. 3.2,б).

a)

b)

Рисунок 3.2 Приклади дерев.

Рисунок 3.3 Ієрархічне подання адміністративної структури вищого учбового закладу.

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

Рисунок 3.4 Приклад ієрархічної структури.

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

Рисунок 3.5 Приклад типу набору у вигляді діаграми Бахмана.

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

Повна схема бази даних формується в загальному випадку з множини різних типів набору і типів запису.

Ієрархічна деревоподібна структура, що орієнтована від коріння, задовольняє такі умови [ 16]:

  1. ієрархія завжди починається з кореневого вузла;

  2. на першому рівні може знаходитися тільки один вузол - кореневий;

  3. на нижніх рівнях знаходяться породжені (залежні) вузли;

  4. кожний породжений вузол, який знаходиться на рівні і, зв'язаний тільки з одним вхідним вузлом, який знаходиться на рівні (і-1) ієрархії дерева;

  5. кожний вхідний вузол може мати один або декілька породжених вузлів, які називаються подібними;

  6. доступ до кожного породженого вузла виконується через відповідний йому вхідний вузол;

  7. існує єдиний ієрархічний шлях доступу до будь-якого вузла, починаючи від кореневого вузла дерева.

Прикладами типових операторів маніпулювання ієрархічно-організованими даними можуть бути такі:

  • пошук заданого дерева БД;

  • перехід від одного дерева до іншого;

  • перехід від одного запису до іншого в середині дерева;

  • перехід від одного запису до іншого в порядку обходу ієрархії;

  • установлення нового запису в зазначену позицію;

  • видалення поточного запису.

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

До недоліків ієрархічних структур відносять надлишковість зберігання інформації, так як ієрархічні структури не підтримують взамозвязки Б:Б; строгу ієрархічну впорядкованість, яка ускладнює процедури включення та вилучення записів; вилучення вихідних вузлів призводить до вилучення відповідних їм породжених, що вимагає особливої обережності; ускладнюється доступ до даних, які лежать на більш низьких рівнях ієрархії, оскільки кореневий вузол завжди є головним, а доступ до будь-якого породженого вузла може здійснюватись через вихідний.

Розглянемо в якості прикладу задачу.

Рисунок 3.6 Представлення бази даних (СТУДЕНТ-ДИСЦИПЛІНА) за допомогою ієрархічної моделі.

Рисунок 3.7 Екземпляр запису ієрархічної бази даних СТУДЕНТ ДИСЦИПЛІНА.

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