一、二叉树-中序遍历:左>头>右
1. 递归实现
//中序 左中头
public static void in(Node head) {
if (head == null) return;
in(head.left);
System.out.print(head.value + ", ");
in(head.rigth);
}
2. 非递归实现
使用栈集合存储节点数据,完成非递归实现
public static void in(Node head) {
System.out.println("in----------------");
if (head != null) {
Stack<Node> stack = new Stack<>();
Node cur = head;
while (!stack.isEmpty() || cur != null) {
if (cur != null) {
stack.push(cur);
cur = cur.left;
} else {
cur = stack.pop();
System.out.print(cur.value + ", ");
cur = cur.right;
}
}
}
}