Я попытался ответить на следующие 2 вопроса, они взяты из теста курса Java, но это немного сбивает с толку из-за рекурсии, которую мне, вероятно, нужно использовать.
Первый - этометод, который получает корень двоичного дерева и возвращает максимальное значение для дерева.(пример на рисунке A).
Этот вопрос (и второй) гласит только завершено в пропущенных строках:
public static int maxInTree (Node root)
{
if (root == null)
return 0;
if ((root.getLeftSon() == null) && (root.getRightSon() == null))
______________________ // I think that here: *return 1*;
if (root.getLeftSon() == null)
return _________________
if (___________ == null) // I think that here: *root.getRightSon()*
_______________________________-
return max______________________________
}
Второй вопрос говорит: сделатьтак же, как и первый вопрос, НО для сортированного бинарного дерева поиска .
public static int maxInSearchTree (Node r)
{
if (r == null)
return 0;
if (r.getRightSon() == null)
__________________________
return _______________________________
}
Можно предположить, что существует метод извлечения отца: getNumber () .
Thnx !!