1 packageSolution;2
3 importjava.util.LinkedList;4 importjava.util.Queue;5 importjava.util.Stack;6
7
8 public classBinaryTree {9
10 //二叉树节点
11 public static classBinaryTreeNode {12 intvalue;13 BinaryTreeNode left;14 BinaryTreeNode right;15
16 public BinaryTreeNode(intvalue) {17 this.value =value;18 }19
20 public BinaryTreeNode(intvalue, BinaryTreeNode left,21 BinaryTreeNode right) {22 super();23 this.value =value;24 this.left =left;25 this.right =right;26 }27
28 }29
30 //访问树的节点
31 public static voidvisit(BinaryTreeNode node) {32 System.out.println(node.value);33 }34
35 /**递归实现二叉树的先序遍历*/
36 public static voidpreOrder(BinaryTreeNode node) {37 if (node != null) {38 visit(node);39 preOrder(node.left);40 preOrder(node.right);41 }42 }43
44 /**递归实现二叉树的中序遍历*/
45 public static voidinOrder(BinaryTreeNode node) {46 if