Содержание
- 2. Бинарные деревья Упорядоченное дерево – это дерево, в котором множество сыновей каждой вершины упорядочено слева направо.
- 3. Обходы деревьев в глубину Пусть T – дерево, r- корень, v1, v2,…, vn – сыновья вершины
- 4. Обходы деревьев в глубину. Пример 1. Прямой Обратный Внутренний 1 2 6 3 7 8 4
- 5. Обходы деревьев в глубину. Пример 2 + * a – d e / + f g
- 6. Реализация обхода typedef struct node { char * word; struct node * left; struct node *
- 7. Обход дерева в ширину - это обход вершин дерева по уровням, начиная от корня, слева направо
- 8. Обход дерева в ширину. Пример b h i j k l d e f a g
- 9. Представления деревьев Определение. Левое скобочное представление дерева Т (обозначается Lrep(Т)) можно получить, применяя к нему следующие
- 10. Скобочные представления деревьев Lrep(T) = b ( h ( a, j ( d ) ), i
- 11. Представление дерева списком прямых предков Составляется список прямых предков для вершин дерева c номерами 1, 2,
- 12. Дерево двоичного поиска Определение. Деревом двоичного поиска для множества S называется помеченное двоичное дерево, каждый узел
- 13. Дерево двоичного поиска. Пример Пусть S = {1, 2, 3, 4, 5, 6, 7, 8, 9,
- 14. Алгоритм просмотра дерева двоичного поиска Вход: Дерево T двоичного поиска для множества S, элемент a. Выход:
- 15. Пример построения дерева двоичного поиска Пусть на вход подаются числа в следующем порядке: 5, 1, 7,
- 16. Операции нахождения минимума и максимума min ( v ) v ← root( T ); while left(v)
- 17. Операция поиска следующего successor (x) if right[x] ≠ NIL then return min (right [x]) y ←
- 18. Операция удаления элемента из дерева поиска Delete(T, z) if left[z] = NIL or right[z] = NIL
- 19. Пример удаления элемента из дерева поиска
- 20. Пример удаления элемента из дерева поиска (окончание)
- 21. Теорема (Т. Кормен и др.) Математическое ожидание высоты случайного бинарного дерева поиска с n ключами равно
- 22. Сбалансированные деревья Определение Дерево называется сбалансированным тогда и только тогда, когда высоты двух поддеревьев каждой из
- 23. Вставка элемента в сбалансированное дерево Пусть r – корень, L – левое поддерево, R – правое
- 24. Вставка в левое поддерево A B 3 2 1 A B 3 2 1
- 25. Вставка в правое поддерево A B 3 2 1 С 4 A 3 2 1 С
- 26. Пример построения АВЛ-дерева
- 27. Красно-чёрное дерево (Red-Black-Tree, RB-Tree) Красно-чёрное дерево обладает следующими свойствами. Каждый узел либо красный либо чёрный Все
- 28. Пример
- 29. Свойства красно-чёрного дерева 1. Если h - чёрная высота дерева, то количество листьев не менее 2h
- 30. Повороты Left_Rotate(T, x) y ← right[x] right[x] ← left[y] if left[y] ≠ nil [T] then p[left[y]]
- 31. Операция вставки Чтобы вставить узел, мы сначала ищем в дереве место, куда его следует добавить. Новый
- 32. Красный предок, красный «дядя» – случай 1 Простое перекрашивание избавляет нас от красно-красного нарушения. После перекраски
- 33. Красный предок, черный «дядя» - случаи 2 и 3
- 34. Пример Случай 1 Случай 2
- 35. Пример, окончание Случай 2 Случай 3
- 36. Удаление узла Если удаляемый узел красный все правила сохраняются и все прекрасно. Если же удаляемый узел
- 37. Сравнение с АВЛ-деревом Пусть высота дерева h, минимальное количество листьев N. Тогда: для АВЛ-дерева N(h) =
- 38. Поиск, вставка, удаление Поиск. Поскольку красно-чёрное дерево, в худшем случае, выше, поиск в нём медленнее, но
- 39. Splay деревья Сплей-дерево (Splay-tree) — это двоичное дерево поиска. Оно позволяет находить быстрее те данные, которые
- 40. Splay(Tree, x) Zig Если p — корень дерева с сыном x, то совершаем один поворот вокруг
- 41. Splay(Tree, x) Zig-Zig Если p — не корень дерева, а x и p — оба левые
- 42. Splay(Tree, x) Zig-Zag Если p — не корень дерева и x — левый ребенок, а p
- 43. Операции Find (Tree, x) Эта операция выполняется как для обычного бинарного дерева, только после нее запускается
- 44. Анализ Splay Амортизационный анализ сплей-дерева проводится с помощью метода потенциалов. Потенциалом рассматриваемого дерева назовём сумму рангов
- 45. Доказательство леммы Пусть r’ и r — ранги вершин после шага и до него соответственно, p
- 46. Доказательство леммы - Zig-zig.
- 48. Скачать презентацию















![Операция поиска следующего successor (x) if right[x] ≠ NIL then return min](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/881427/slide-16.jpg)
![Операция удаления элемента из дерева поиска Delete(T, z) if left[z] = NIL](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/881427/slide-17.jpg)











![Повороты Left_Rotate(T, x) y ← right[x] right[x] ← left[y] if left[y] ≠](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/881427/slide-29.jpg)
















Презентация на тему Что такое биоинформатика
Персональный компьютер. Компьютер как унивесальное устройство для работы с информацией
Структура, функции и принципы реализации мониторно-компьютерных систем
Информация для сайта
Comunio. Онлайн футбольный фэнтези-менеджер
Инструкция для RadiON
Представление данных (объекты СУБД)
Центр гигиены и эпидемиологии в Томской области. Разработка веб-приложения
Компьютерное искусство
Элементы алгебры логики. Высказывание. Математические основы информатики
Читинский филиал
Язык программирования Python. Основы
Примеры заданий для языков ФП
Этот волшебный мир медиа!
Электронные таблицы EXCEL
Устройство компьютера
Использование текстовых файлов в Паскале
Списки в Python
Конъюнкция и Дизъюнкция
Формы в HTML
Системы счисления
Интерпретация уравнения регрессии
Создание индивидуального шифра
Алгоритмы. Значение алгоритма в информатике
Использование платформы Discord при дистанционном обучении химии
Основы программирования на языке высокого уровня. Модуль 1
Краткая характеристика программ офисного пакета
PDM/PLM - системы