Я почти закончил реализацию красного черного дерева, но я застрял с , как рассчитать высоту (не черный высота). Может ли кто-нибудь дать мне подсказку или концепцию о том, как реализовать высоту? Я знаю формулу, но это не очень помогает.Как рассчитать высоту красного черного дерева?
Я думал о пересечении каждого узла и добавлении счетчика, но это усложняется по мере того, как красное черное дерево становится больше.
В основном, как я узнаю, когда он прошел до самого длинного пути?
Я не очень беспокоюсь о временной сложности решения, но я бы хотел избежать n .
Я не думаю, что есть способ узнать «истинную» высоту без явного отслеживания или DFSing. Черная высота действительно все это важно. Я бы предположил, что худший случай «истинный» рост ((2 * черная высота) -1), так как корень и листья должны быть черными, и у каждого красного родителя должно быть два черных ребенка. – Justin