Рекурсивный обход дерева на Python Рекурсивный обход дерева — это мощный и элегантный способ обработки узлов в древовидной структуре данных. Суть рекурсии заключается в том, что функция вызывает саму себя для решения подзадач, пока не достигнет базового случая (например, листа дерева или пустого узла). Рассмотрим основные типы рекурсивного обхода бинарного дерева: Прямой обход (Pre-order traversal): Корень -> Левое поддерево -> Правое поддерево Симметричный обход (In-order traversal): Левое поддерево -> Корень -> Правое поддерево Обратный обход (Post-order traversal): Левое поддерево -> Правое поддерево -> Корень Прежде чем показать примеры, давайте определим простую структуру узла дерева. Python Class TreeNode: def __init__(self, value): self. value = value self. left = None self. right = None # Создадим простое дерево для примера: # 4 # / \ # 2 5 # / \ # 1 3 Root = TreeNode(4) Root. left = TreeNode(2) Root. right = TreeNode(5) Root. left. left = TreeNode(1) Root. left. right = TreeNo