Ан Дерево AVL визначається як самобалансування Різниця між висотами лівого піддерева і правого піддерева для будь-якого вузла відома як фактор балансу вузла.
Дерево AVL названо на честь його винахідників Георгія Адельсона-Вельського та Євгенія Ландіса, які опублікували його у своїй статті «Алгоритм організації інформації» 1962 року.
Приклад дерев AVL:
Дерево AVL
Наведене вище дерево є AVL, оскільки різниця між висотами лівого та правого піддерев для кожного вузла менше або дорівнює 1.
Операції над деревом AVL:
Обертання піддерев у дереві AVL:
Дерево AVL може обертатися одним із наступних чотирьох способів, щоб підтримувати баланс:
Обертання вліво :
Коли вузол додається до правого піддерева правого піддерева, якщо дерево виходить з балансу, ми виконуємо один поворот ліворуч.
Обертання вліво в дереві AVL
Обертання вправо :
Якщо до лівого піддерева лівого піддерева додається вузол, дерево AVL може вийти з рівноваги, ми виконуємо один поворот праворуч.
Обертання вправо в дереві AVL
Обертання вліво-вправо :
Обертання ліворуч-праворуч — це комбінація, у якій перше обертання ліворуч відбувається після того, як виконується обертання праворуч.
Обертання вліво-вправо в дереві AVL
Обертання вправо-вліво :
замінити всю javaОбертання праворуч-ліворуч — це комбінація, у якій перше обертання праворуч відбувається після того, як виконується обертання ліворуч.
Обертання вправо-вліво в дереві AVL
Застосування дерева AVL:
- Він використовується для індексування величезних записів у базі даних, а також для ефективного пошуку в ній.
- Для всіх типів колекцій у пам’яті, включаючи набори та словники, використовуються дерева AVL.
- Програми баз даних, де вставки та видалення менш поширені, але потрібен частий пошук даних
- Програмне забезпечення, яке потребує оптимізованого пошуку.
- Застосовується в корпоративних зонах і сюжетних іграх.
Переваги AVL Tree:
- Дерева AVL можуть самостійно балансувати.
- Він точно не перекошений.
- Він забезпечує швидший пошук, ніж Red-Black Trees
- Краща складність часу пошуку порівняно з іншими деревами, такими як двійкове дерево.
- Висота не може перевищувати log(N), де N — загальна кількість вузлів у дереві.
Недоліки AVL Tree:
- Важко реалізувати.
- Він має високі постійні коефіцієнти для деяких операцій.
- Менше використовується порівняно з червоно-чорними деревами.
- Завдяки досить суворому балансу дерева AVL забезпечують складні операції вставки та видалення, оскільки виконується більше обертань.
- Візьміть більше обробки для балансування.
Пов'язані статті:
- Вступ до бінарних дерев пошуку – Навчальні посібники зі структури даних і алгоритмів
- Вставка в дерево AVL
- Видалення в дереві AVL



