Заявление о проблемах
Вам предоставляется указатель на корень двоичного дерева. Распечатайте вид сверху двоичного дерева. Вам нужно только выполнить функцию.
Мой код:
void top_view(Node root)
{
Node r = root;
if(r.left!=null){
top_view(r.left);
System.out.print(r.data + " ");
}
if(r.right!=null){
System.out.print(r.data + " ");
top_view(r.right);
}
}
Два оператора if выполняются каждый раз при вызове функции, но мне нужно выполнить только один из них. Я попробовал переключатель, но он дал постоянную ошибку выражения. Я уже нашел другое решение для этой проблемы.
Итак, я только хочу знать, можем ли мы сделать только одно, если выполняем за один раз, т.е. есть ли способ исправить мой код без изменения подхода?
Ссылка на проблему: https://www.hackerrank.com/challenges/tree-top-view