刷题专栏(十一):二叉树的后序遍历

简介: 刷题专栏(十一):二叉树的后序遍历

前言

今天接着来学习二叉树的相关题目,现在的我对于二叉树的简单类型的题目简直就是信手捏来。

今天的这道题目,和上一篇刷题专栏中的题目特别类似,那就是《二叉树的后续遍历》。

比起前序排序,这道题就差不多了,只不过是要转换一下思维。

接下来,我们就一起来看看吧。

image.png

算法题:二叉树的后序遍历

首先,因为和昨天的那道题太像了,我就选择不那么啰嗦了。

处理二叉树的方式,通常就是递归、迭代遍历。

如果要一个个的获取二叉树上每一个节点上面的值。

那我觉得递归是最容易理解的,而迭代是性能最好的。

这里大家可以都去试一下。

再者如何来拿到后序遍历的数值呢。

其实我们还是要正序遍历的,只不过存储值的时候要先存子节点,再存当前节点。

不知道有没有理解,下面来看一下代码。

代码展示

下面就是本次执行的代码了,采用就是二叉树递归的方式。

/**
 * Definition for a binary tree node.
 * public class TreeNode {
 *     int val;
 *     TreeNode left;
 *     TreeNode right;
 *     TreeNode() {}
 *     TreeNode(int val) { this.val = val; }
 *     TreeNode(int val, TreeNode left, TreeNode right) {
 *         this.val = val;
 *         this.left = left;
 *         this.right = right;
 *     }
 * }
 */
class Solution {
    public List<Integer> postorderTraversal(TreeNode root) {
        List<Integer> resultList = new ArrayList<Integer>();
        digui(root, resultList);
        return resultList;
    }
    public void digui(TreeNode root, List<Integer> resultList) {
        if (root == null) {
            return;
        }
        digui(root.left, resultList);
        digui(root.right, resultList);
        resultList.add(root.val);
    }
}

代码执行结果

本次的代码执行结果,只能算是部分成功,耗费的内存名次太差了也;这简直就是火葬场。

image.png

总结

今天这道题和昨天的那道题简直太像了,只不过是存放顺序有些不一样而已,所以大家如果在做这道题的时候,也可以去昨天那篇文章。

目录
相关文章
|
2月前
|
存储 算法 数据管理
【C++入门到精通】C++入门 ——搜索二叉树(二叉树进阶)
在C++中,本文介绍了搜索二叉树(二叉搜索树,BST)的概念和基本操作,包括搜索、插入和删除。搜索操作从根节点开始,按值大小决定左右查找;插入操作找到合适位置新建节点;删除操作需考虑无子节点、单子节点和双子节点的情况。文中还提供了非递归和递归实现的C++代码示例。此外,讨论了搜索二叉树在K模型和KV模型中的应用以及性能分析,强调了保持树平衡的重要性。
17 0
|
4月前
|
C++ 容器
『 C++ 』二叉树进阶OJ题(上)
『 C++ 』二叉树进阶OJ题(上)
『 C++ 』二叉树进阶OJ题(上)
|
4月前
|
存储 C++ 容器
『 C++ 』二叉树进阶OJ题(下)
『 C++ 』二叉树进阶OJ题(下)
|
4月前
|
C++ 容器
『 C++ 』二叉树进阶OJ题(中)
『 C++ 』二叉树进阶OJ题(中)
|
4月前
|
存储 算法
二叉树进阶OJ题
二叉树进阶OJ题
18 0
|
5月前
|
算法
刷题专栏(十):二叉树的前序遍历
刷题专栏(十):二叉树的前序遍历
32 0
|
5月前
|
算法
刷题专栏(六):二叉树的最大深度
刷题专栏(六):二叉树的最大深度
38 0
|
5月前
|
算法
刷题专栏(十三):二叉搜索树的最近公共祖先
刷题专栏(十三):二叉搜索树的最近公共祖先
30 0
|
5月前
|
算法
刷题专栏(十二):翻转二叉树
刷题专栏(十二):翻转二叉树
39 0
|
5月前
|
算法
刷题专栏(八):平衡二叉树
刷题专栏(八):平衡二叉树
33 0