Бинарное дерево — это структура данных, в которой каждый узел имеет до двух дочерних. Дочерние узлы называются левым и правым. Бинарное дерево может использоваться для хранения упорядоченного набора данных, таких как числа или строки. Для реализации бинарного дерева в Python сначала определяем класс узла, который будет содержать значение элемента и ссылки на левого и правого потомков: class Node:
def __init__(self, value):
self.value = value
self.left_child = None
self...
Задача «Родословная: подсчет уровней» Мое решение на Python 3. Условие задачи: В генеалогическом древе у каждого человека, кроме родоначальника, есть ровно один родитель. Каждом элементу дерева сопоставляется целое неотрицательное число, называемое высотой. У родоначальника высота равна 0, у любого другого элемента высота на 1 больше, чем у его родителя. Вам дано генеалогическое древо, определите высоту всех его элементов. Программа получает на вход число элементов в генеалогическом древе N. Далее следует N−1 строка, задающие родителя для каждого элемента древа, кроме родоначальника...