Java递归遍历Tree数据结构

示例

看具有3个成员数据的Node类,如下所示是左子指针和右子指针。

public class Node {
    public int data;
    public Node left;
    public Node right;
    
    public Node(int data){
       this.data= data;
    }
}

我们可以像下面这样遍历通过连接多个Node类的对象构造的树,这种遍历称为树的有序遍历。

public static void inOrderTraversal(Node root) {
        if (root != null) {          
            inOrderTraversal(root.left); // 遍历左子树
            System.out.print(root.data + " "); // 遍历当前节点
            inOrderTraversal(root.right); // 遍历右子树
        }
    }

如上所述,使用递归,我们可以遍历树数据结构,而无需使用迭代方法无法实现的任何其他数据结构。