각 후속 단계마다 들여 쓰기 (3 공백)가있는 이진 트리를 선주문 인쇄하는 방법은 어떻습니까? 이 시점에서 필자는 도우미 메서드를 사용하여 반복적으로 트리를 인쇄하고 있지만 들여 쓰기 코딩 방법을 잘 모릅니다.선주문 인쇄 들여 쓰기가있는 이진수 트리
public void print() {
printPreorder(root);
System.out.println();
}
private void printPreorder(BinaryTreenode<E> node) {
System.out.println(node.getData() + " ");
if (node.getLeft() != null) {
printPreorder(node.getRight());
}
if (node.getRight() != null) {
printPreorder(node.getRight());
}
}
내 즉각적인 생각은 카운터에 넣어이었고,이 방법은 재귀 적으로 호출 될 때마다 증가가 있고, 각 증가에 대한 다음 들여 쓰기 세 공간,하지만 난 : 이것은 내가 지금까지 무엇을 가지고 이 작업을 수행하는 가장 좋은 방법인지 확신하지 못합니다.
첫 번째 사항부터 시작합니다. 첫 번째 재귀 호출을 확인하십시오. 당신은 잘못된 지점을 부르고 있습니다. – Grambot