美文网首页
二叉树的后续遍历

二叉树的后续遍历

作者: 放开那个BUG | 来源:发表于2024-04-13 14:54 被阅读0次

一、自底向上

二叉树自底向上的递归就是后续遍历,后续遍历在二叉树中非常非常重要,他能够先遍历左右子树的值,然后在返回到父节点,是一个非常非常理想的自底向上的逻辑。

几乎所有二叉树的题目,如果使用 dfs,都需要二叉树的后续遍历逻辑。因为都需要考虑最简单的节点的左右节点情况,然后再往上依次扩大规模。

一般我们做二叉树的题目,比如求二叉树的深度,都会这样写:

    public int maxDepth(TreeNode root) {
        if(root == null){
            return 0;
        }
        int left = maxDepth(root.left);
        int right = maxDepth(root.right);
        return Math.max(left, right) + 1;
    }

都是先求左边,然后求右边,然后依次向上。而这个代码实际上的运行顺序就是先到最后一个节点,然后看left和right,然后往上。然后看最后一个节点的(此时变成 left)的父节点的 right,以此类推。

相关文章

  • 二叉树遍历

    请递归,非递归方式分别前序遍历,中序遍历,后续遍历二叉树

  • 二叉树相关算法

    二叉树定义 前序遍历(中序遍历、后续遍历只需要调整append的顺序即可) 层序遍历 二叉树的最大深度 对称二叉树...

  • 二叉树遍历java,非递归、层次。

    /** * 前序遍历 * 递归 */ /*** 前序遍历* 非递归*/ 后续遍历非递归 二叉树层次遍历基于java...

  • 二叉树的三种遍历(前序/中序/后序)

    参考博客 二叉树的非递归后续遍历

  • 算法精选题总结之二叉树类

    1.二叉树的中序遍历中序遍历的迭代方法中序遍历的递归方法2.二叉树前序遍历3.二叉树后续遍历4.二叉树的最近公共祖...

  • 剑指offer 面试题6:重建二叉树

    题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。 解法:前序遍历:根左右中序遍历:左根右后续遍历:...

  • 二叉树(python实现)

    一、二叉树的几种遍历方式 1、前序遍历(根——>左——>右) 2、中序遍历(左——>根——>右) 3、后续遍历(左...

  • 二叉树的非前、中、后序遍历

    本篇文章介绍二叉树中除了前序、中序、后续遍历以外的其他一些遍历方式。 首先,还是定义树的节点如下 按层遍历二叉树 ...

  • 一般二叉树普通二叉树,前、中、后序遍历以及搜索 顺序存储二叉树将数组以树的思想标识,包括前、中、后续遍历 线索化二...

  • 二叉树的问题

    二叉树的前序遍历是:-+abc*de/f,后续遍历是:bad*c+f/e-,则层序遍历和中序遍历依次为: A. -...

网友评论

      本文标题:二叉树的后续遍历

      本文链接:https://www.haomeiwen.com/subject/tyflxjtx.html