이진 트리의 inorder 순회를위한 비 재귀 적 메서드를 구현해야한다는 것입니다. 나는 꼼짝 못한다.Stack을 사용한 "inorder tree traversal"알고리즘 구현 수정
public void inorder(BinaryTree v) {
Stack<BinaryTree> stack = new Stack<BinaryTree>();
stack.push(v);
System.out.println(v.getValue());
while(!stack.isEmpty()) {
while(v.getLeft() != null) {
v = v.getLeft();
stack.push(v);
System.out.println(v.getValue());
}
while(v.getRight() != null) {
v = v.getRight();
stack.push(v);
System.out.println(v.getValue());
}
stack.pop();
}
}
내가 그것을 단지 내 나무, 예를 들어, 왼쪽을 출력 것으로 나타났습니다 : 여기에 지금까지 무엇을 가지고
A
/ \
B C
/ \/\
D E F G
/\
H I
/\
J K
이 A B D H J
감사합니다. 의견을 보내 주시면 의견을 보내 주시면 더 효과적 일 수 있습니다. – tenkii