二叉树遍历

前序遍历:根左右
中序遍历:左根右
后序遍历:左右根
层序遍历:从上往下、从左往右

递归遍历:使用递归方法遍历
迭代遍历:使用迭代方法实现递归函数,与递归等价morris遍历!

前序遍历
二叉树遍历

public static void preorder(TreeNode root){
        if (root == null){
            return;
        }
        System.out.println(root.val);//前序:第一次成为栈顶元素即打印
        preorder(root.left);
        preorder(root.right);
    }

输出:1 2 4 5 6 7 3

中序遍历

public static void midorder(TreeNode root){
        if (root == null){
            return;
        }
        midorder(root.left);
        System.out.print(root.val);
        midorder(root.right);
    }

输出:4 2 6 5 7 1 3

后序遍历

public static void endorder(TreeNode root){
        if (root == null){
            return;
        }
        endorder(root.left);
        endorder(root.right);
        System.out.print(root.val);
    }

输出:4 6 7 5 2 3 1

二叉树遍历

上一篇:java程序重要节点


下一篇:ASP.NET上传时间超过4M失败(超时)的解决方法