二叉树遍历的说明

使用前序,中序和后序对下面的二叉树进行遍历.

img img

  • 前序遍历: 先输出父节点,再遍历左子树和右子树
  • 中序遍历: 先遍历左子树,再输出父节点,再遍历右子树
  • 后序遍历: 先遍历左子树,再遍历右子树,最后输出父节点 小结: 看输出父节点的顺序,就确定是前序,中序还是后序

二叉树遍历应用实例(前序,中序,后序)

.

img

要求如下: 前上图的 3号节点 "卢俊" , 增加一个左子节点 [5, 关胜] 使用前序,中序,后序遍历,请写出各自输出的顺序是什么?

class HeroNode {
    private int no;
    private String name;
    private HeroNode leftNode;
    private HeroNode rightNode;
    public HeroNode(int hNo, String hName) {
    no = hNo;
    name = hName;
}
// 前序遍历
public void preOrder() {
    System.out.println(this);//先输出父节点
    if (this.leftNode != null) {
        this.leftNode.preOrder();
    }
    if (this.rightNode != null) {
        this.rightNode.preOrder();
    }
}
class BinaryTree {
private HeroNode root;

public void setRoot(HeroNode root) {
    this.root = root;
}

// 前序遍历
public void preOrder() {
    if (root != null) {
        root.preOrder();
    }
}
}


results matching ""

    No results matching ""