java二叉树的简单创建和遍历
java中二叉树的创建非常简单,只需将左和右创建一个类并赋予一个变量,用root来表示根节点
点击查看代码
public static class BTNode {
BTNode left;
BTNode right;
int value;
BTNode(int value) {
this.value = value;
}
private BTNode root;
点击查看代码
public void createBinaryTree(){
BTNode node1 = new BTNode(1);
BTNode node2 = new BTNode(2);
BTNode node3 = new BTNode(3);
BTNode node4 = new BTNode(4);
BTNode node5 = new BTNode(5);
BTNode node6 = new BTNode(6);
BTNode node7 = new BTNode(7);
root = node1;
node1.left = node2;
node2.left = node3;
node1.right = node4;
node4.right = node5;
node5.right = node6;
}
中序遍历 :打印左节点,而后根节点,再右节点,注意是从下而上
后序遍历 :打印左节点,右节点,最后根节点,同上
实现如下
点击查看代码
// 前序遍历
void preOrder(BTNode root){
if(root == null){
return;
}
System.out.print(root.value + " ");
postOrder(root.left);
postOrder(root.right);
}
// 中序遍历
void inOrder(BTNode root){
if(root == null){
return;
}
inOrder(root.left);
System.out.print(root.value + " ");
inOrder(root.right);
}
// 后序遍历
void postOrder(BTNode root){
if(root == null){
return;
}
postOrder(root.left);
postOrder(root.right);
System.out.print(root.value + " ");
}
浙公网安备 33010602011771号