Алгоритмы и структуры данных. Лекция 5. Двоичное дерево поиска на Python
Деревья в Python: структуры данных и реализация
Дерево — это иерархическая структура данных, состоящая из узлов, связанных отношениями «родитель-потомок». Каждое дерево имеет корневой узел (root), от которого происходят все остальные элементы. Деревья широко применяются в программировании для представления иерархий (например, файловая система), алгоритмах поиска, машинном обучении и синтаксическом анализе. В Python деревья можно реализовать с помощью классов, рекурсии и стандартных библиотек. - Корень (Root): Начальный узел дерева. - Узел (Node): Элемент дерева, который может содержать данные и ссылки на дочерние узлы...
Структуры - Алгоритмы - Дерево в виде списка списков - Python
Создадим класс Tree. С помощью дандер метода init установим начальные условия для нашего дерева: корень r и два пустых наследника, правый и левый. Пропишем методы вставки значений для каждой ветки, правой insertRight и левой insertLeft: 1) копируем существующее дерево - список-списков, инициализированное в init, забираем первый элемент, для левой ветки, и второй элемент, для правой ветки. 2) Если ветка пустая: то добавляем новое значение и две дополнительных пустых ветки к ней(правую и левую), если же ветка непустая, то добавляем всех родителей добавленного нового значения. Прописываем методы получения значений каждой ветки, корня, и изменения корня...