Правильный способ сбалансировать дерево - PullRequest
0 голосов
/ 01 июня 2018

вставив несколько чисел в дерево, я получил такой результат: enter image description here

Поэтому я уравновесил его вращением, думая, что этот результат был бы лучшим: enter image description here

Проблема в том, что после того, как я увидел решение упражнения, я обнаружил, что лучшая оптимизация такова: enter image description here

1 Ответ

0 голосов
/ 01 июня 2018

В нижнем изображении отсутствует узел, так что вы что-то неверно истолковали?

Цель балансировки бинарного дерева поиска - создать дерево с наименьшим средним расстоянием прохождения.

Одинпричина этого заключается в том, что дерево будет одинаково легко пройти, если узел будет добавлен или удален.

2-е изображение, по-видимому, является наиболее оптимальным из возможных балансов, и замена любых двух узлов будет поддерживать то же самоебаланс.

...