У меня много проблем с этой задачей.Используя определение Википедии для полного двоичного дерева:
Полное двоичное дерево - это двоичное дерево, в котором каждый уровень, за исключением, возможно, последнего, полностью заполнен, и все узлы расположены как можно левее.
Мне нужен способ проверки этих условий, но, как бы я ни старался, я ничего не могу придумать.Если бы я должен был передать вход TreeNode tree
в метод checkComplete
, как я мог бы пройти через двоичное дерево и проверить, что оно завершено?Может кто-нибудь помочь с псевдокодом или объяснение того, как это возможно?Здесь был еще один вопрос: Как определить, является ли двоичное дерево полным?
В этом ответе был псевдокод, но я не мог понять, где были все случайные величиныисходя из того, что они должны были представлять, или почему в последних 3 строках было два значения в скобках.Если бы кто-то мог помочь с другим представлением, я был бы очень признателен.
Спасибо.