LeetCode 590. N叉树的后序遍历(后序遍历)
文章目录
- 1. 题目
- 2. 解题
- 2.1 递归
- 2.2 循环
1. 题目
2. 解题
2.1 递归
class Solution {public:vector<int> postorder(Node* root) {vector<int> ans;postRec(root, ans);return ans;}void postRec(Node* root, vector<int> &ans){if (root == NULL)return;for(int i = 0; i < root->children.size(); ++i){postRec(root->children[i], ans);}ans.push_back(root->val);}
};
2.2 循环
- 利用先序,改一下,得到 根右左,最后反转 左右根(后序)
class Solution {public:vector<int> postorder(Node* root) {if(root == NULL)return {};vector<int> ans;stack<Node*> stk;stk.push(root);Node *tp;int i, k;while(!stk.empty()){tp = stk.top();k = tp->children.size();ans.push_back(tp->val);stk.pop();i = 0;while(i<k)stk.push(tp->children[i++]);}//上面得到的是根右左,逆序return得到左右根(后序)return vector<int> (ans.rbegin(), ans.rend());}
};
LeetCode 590. N叉树的后序遍历(后序遍历)相关推荐
- 2022-5-1 Leetcode 590.N叉树的后序遍历
递归法 class Solution {public:vector<int> postorder(Node* root) {vector<int> ans;recursion( ...
- LeetCode Algorithm 590. N 叉树的后序遍历
590. N 叉树的后序遍历 Ideas N叉树的后序遍历其实就是前序遍历翻转过来,所以我们可以用栈模拟递归得到前序遍历序列,然后翻转一下就OK了. Code Python class Solutio ...
- leetcode 589. N 叉树的前序遍历,590. N 叉树的后序遍历(Java版)
589. N 叉树的前序遍历 https://leetcode-cn.com/problems/n-ary-tree-preorder-traversal/ 题解 import java.util.A ...
- 【算法系列之线索化二叉树,前序线索化、中序线索化、后序线索化以及遍历~】
1.何谓线索化二叉树 2.线索化二叉树的本质 3.线索化二叉树的存储结构 4.构建线索化二叉树 4.1.先序线索化 4.2.中序线索化 4.3.后序线索化 5.遍历线索化二叉树 5.1.先序遍历 先序 ...
- [Leetcode][第889题][JAVA][根据前序和后序遍历构造二叉树][分治][递归]
[问题描述][中等] [解答思路] copyOfRange class Solution {public TreeNode constructFromPrePost(int[] pre, int[] ...
- [Leetcode][第106题][JAVA][ 从中序与后序遍历序列构造二叉树][分治][递归]
[问题描述][中等] [解答思路] public class Solution {public TreeNode buildTree(int[] inorder, int[] postorder) { ...
- LeetCode根据前序与中序、中序与后序,前序与后序遍历序列构建二叉树
根据前序与中序遍历序列构建二叉树 LeetCode题目来源 1.1 题目描述 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是 ...
- 【LeetCode系列】从中序与后序遍历序列构造二叉树 从前序与中序遍历序列构造二叉树...
关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 105. 从前序与中序遍历序列构造二叉树 根据一棵树的前序遍历与中序遍历构造二叉树 ...
- leetcode 106. 从中序与后序遍历序列构造二叉树 c语言递归解法
如题: 根据一棵树的中序遍历与后序遍历构造二叉树. 注意: 你可以假设树中没有重复的元素.例如,给出 中序遍历 inorder = [9,3,15,20,7] 后序遍历 postorder = [9, ...
最新文章
- Nginx Java环境(tomcat)支持
- python到底是干嘛用的-python到底能做什么
- 部分设备在微信内无法播放audio的解决方案
- DBeaverEE7.3.0安装教程
- CSS3展开带弹性动画的手风琴菜单
- tomat(16)关闭钩子
- 2017.4.07 js 中的function 实现的方式
- 为什么 Python 不用设计模式?
- 2017的金秋,派卧底去阿里、京东、美团、滴滴带回来的面试题及答案
- AXURE-手把手教你做汉化
- Optimus双显卡笔记本上用MediaCoder转换iPhone/iPod 4视频
- 惠普服务器做虚拟化,节省成本立竿见影 惠普虚拟化技术详解
- zedgraph怎么画曲线图_ZedGraph如何动态的加载曲线
- 如何巧妙将流量转化为销量?
- 2020腾讯校园实习生招聘面经(Offer):系统技术运维岗和后台开发岗
- 2014淘宝钻石展位新客户考试
- 本体学习方法及开发过程小结
- Isight9.0 desc文件解析
- 基层管理之正负向激励
- 4.TP6学习 - jwt + 微信小程序验证token
热门文章
- php substr_replace 中文乱码,php substr_replace替换字符串一些实例_PHP教程
- s5pv210——中断系统相关介绍
- Python进程学习笔记-multiprocessing模块
- python-greenlet模块(协程)
- Oracle Minus关键字
- ATS push cache 测试
- 从入门到深入Fiddler 2 (二)
- 做po_requisitions_interface_all接口开发问题
- IBM软件服务创新运用 提升市民生活质量
- 在数据库中, 不用max()/min()找出一个列中最大/最小值的记录