流程:
left子节点(包括其子树)-> 节点 -> right子节点。
非递归形式:
//中序遍历
public static void inOrder(Node root){
Stack stack = new Stack();
Node node = root;
while(node != null || stack.size() > 0){
//压入所有左节点
while(node != null){
stack.push(node);
node = node.left;
}
if(stack.size() > 0){
node = stack.pop();
System.out.println(node.data);
node = node.right();
}
}
}