1、题目

给定一棵二叉树,分别按照二叉树先序,中序和后序打印所有的节点。
数据范围:0≤n≤1000,树上每个节点的val值满足 0≤val≤100
要求:空间复杂度 O(n),时间复杂度O(n)。
例如:
输入:{1,2,3}
输出:[[1,2,3],[2,1,3],[2,3,1]]

2、思路

思路一:用递归的方法,先序:根左右, 中序:左根右,后序:左右根

3、代码

class Solution {public:/*** * @param root TreeNode类 the root of binary tree* @return int整型vector<vector<>>*/vector<int> m_preorder, m_midorder, m_lastorder;vector<vector<int> > res;vector<vector<int> > threeOrders(TreeNode* root) {// write code herepreorder(root);midorder(root);lastorder(root);res.push_back(m_preorder);res.push_back(m_midorder);res.push_back(m_lastorder);return res;}void preorder(TreeNode* root){if (!root) return;m_preorder.push_back(root->val);preorder(root->left);preorder(root->right);}void midorder(TreeNode* root){if (!root) return;midorder(root->left);m_midorder.push_back(root->val);midorder(root->right);}void lastorder(TreeNode* root){if (!root) return;lastorder(root->left);lastorder(root->right);m_lastorder.push_back(root->val);}
};```

leetcode- 实现二叉树先序,中序和后序遍历相关推荐

  1. [Leetcode][第889题][JAVA][根据前序和后序遍历构造二叉树][分治][递归]

    [问题描述][中等] [解答思路] copyOfRange class Solution {public TreeNode constructFromPrePost(int[] pre, int[] ...

  2. PAT甲级1020变体:已知二叉树层序+中序序列,求后序遍历序列

    PAT甲级1020变体:已知二叉树层序+中序序列,求后序遍历序列 题目 输入格式 输出格式 输入样例 输出样例 代码 题目 已知二叉树层序+中序序列,求后序遍历序列. 输入格式 第一行给出该二叉树的节 ...

  3. 二叉树的中序、前序、后序三种遍历图解

    二叉树是算法中的重要概念,现将中序.前序.后序三种遍历图解如下: ***站里很多帖子讲到三种遍历的顺序是逐一开展的,但是我感觉同级遍历应该是同时开展的,不知道对不对,请大牛指教~~

  4. 已知满二叉树先序序列如何求后序序列

    如题 自用笔记 如有错误欢迎及时指正 面对仅仅知道先序序列(DLR)求后序序列(LRD),首先想到的是不可能,若对一般的二叉树而言确实无法做到,但是满二叉树的特殊性使得该命题成立!下面给出本文所用例子 ...

  5. 树的遍历(中序,前序,后序)

    与只有一种逻辑遍历它们的线性数据结构(数组.链表.队列.堆栈等)不同,树可以以不同的方式遍历,常见的有中序遍历,前序遍历和后序遍历. 实现各种遍历的方法又包括: 以上图为例: 深度优先遍历:  (a) ...

  6. LeetCode根据前序与中序、中序与后序,前序与后序遍历序列构建二叉树

    根据前序与中序遍历序列构建二叉树 LeetCode题目来源 1.1 题目描述 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是 ...

  7. 二叉树的先序线索化、中序线索化、后序线索化的对比

    有一点需要注意:在先序遍历一个节点的左子树时,需要判断其ltag的值是否为0,如果为0可以正常遍历,但是,如果为1就不能进行遍历.因为ltag的值为1说明该结点的左指针指向的是它的前驱结点而不是左孩子 ...

  8. java二叉树合并_Java(树的前中后序遍历构造二叉树题型整合)前序和中序、中序和后序、前序和后序遍历序列构造二叉树算法整合归纳...

    前言 二叉树各种花里胡哨的算法题真的把我搞晕了,今天特地整理出一类有关二叉树的算法题,希望能帮助阅读到此文章的人,今后不再受此类题型的困扰. 一.题目类型 已知二叉树的两种遍历序列,请根据该序列构建二 ...

  9. 已知二叉树先序序列和中序序列,求后序序列

    回答了百度知道上的一个提问,原题是这样的: 当一棵二叉树前序序列和中序序列分别为HGEDBFCA和EGBDHFAC时,其后序序列为什么?当一棵二叉树前序序列和中序序列分别为HGEDBFCA和EGBDH ...

  10. [LeetCode] N-ary Tree Postorder Traversal N叉树的后序遍历

    Given an n-ary tree, return the postorder traversal of its nodes' values. For example, given a 3-ary ...

最新文章

  1. poj2352(树状数组)
  2. 洛谷P1265 公路修建
  3. PowerDesigner 手记
  4. 从零开始学_JavaScript_系列(21)——dojo(8)(手把手教你封装一个widget)
  5. Theano 中文文档 0.9 - 5. 安装Theano
  6. 电脑是个神奇的东西!
  7. 使用「Bartender」创建简洁的Mac菜单栏
  8. 吴恩达机器学习作业一
  9. A(AI)、B(BigData)、C(Cloud)通俗介绍
  10. 金融科技之能量守恒定律
  11. 计算机设计大赛感言,平面设计大赛获奖感言
  12. “cp: 略过目录 “问题
  13. 通用管理平台GBase 8c Platform
  14. r语言做绘制精美pcoa图_科学网—R语言 PCA PCoA ggplot2 - 靳泽星的博文
  15. 色调映射:Edge-Preserving Decompositions for Multi-Scale Tone and Detail Manipulation
  16. CentOS上使用docker安装redis
  17. Java学习笔记(22)Developing Efficient Algorithms
  18. yapi与rap2比较
  19. 【python】Python通过unrar库实现解压rar文件
  20. 中本聪是个贪婪的矿工吗?

热门文章

  1. 人生就是一场猝不及防
  2. ARMV8体系结构简介:概述
  3. VisualStudio代码放在不同文件夹下进行管理,设置包含目录
  4. ctfshow--RCE极限挑战
  5. 谷歌地图倾斜摄影(三维瓦片3dtiles)展示
  6. %3c strong%3e html,爱Q学习吧在线QQ强制聊天系统代码
  7. QuantLIb C++金融工程库初体验
  8. iOS使用UIAppearance
  9. 山东大学软件学院项目实训-创新实训-山大软院网络攻防靶场实验平台(十三)-任意文件下载漏洞(1)
  10. 隐语义模型 VS 协同过滤