У меня есть следующий метод для рекурсивного выполнения обхода тройного дерева по предварительному заказу, но возникают трудности при печати его определенным образом.
public void preOrder(Node node) {
if (node == null) {
return;
}
System.out.print(" " + node.data);
preOrder(node.left);
preOrder(node.middle);
preOrder(node.right);
}
Output: Root LeftChild LeftChildA LeftChildB LeftChildC MiddleChild RightChild
Desired Output:
Root
Left
LeftChildA //Left child of left
LeftChildB //Middle child of left
LeftChildC //Right child of left
Middle
Right
Я хочу сделать отступ для каждого уровня дерево, чтобы упростить визуализацию структуры дерева. Пожалуйста, помогите.