LeetCode589. N叉树的前序遍历
题目
法一、递归
 1 class Solution {
 2 public:
 3     vector<int>ans;
 4     void dfs(Node* root){
 5         if(root!=NULL){
 6             ans.push_back(root->val);
 7             for(int i = 0;i < root->children.size();i++)
 8             preorder(root->children[i]);
 9         }
10     }
11     vector<int> preorder(Node* root) {
12         dfs(root);
13         return ans;
14     }
15 };
法二,用栈迭代
 1 class Solution {
 2 public:
 3     vector<int> preorder(Node* root) {
 4       vector<int>ans;
 5       stack<Node*>v;
 6       if(root==NULL) return ans;
 7       v.push(root);
 8       while(!v.empty()){
 9           Node *node = v.top();v.pop();
10           if(node) ans.push_back(node->val);
11           else continue;
12
13           for(int i = node->children.size()-1;i >= 0;i--){
14               v.push(node->children[i]);
15           }
16       }
17       return ans;
18     }
19 };
LeetCode589. N叉树的前序遍历的更多相关文章
- [树]LeetCode589 N叉树的前序遍历
		LeetCode N叉树的前序遍历 前言:树的前中后序遍历已经是很经典的题目的,要么递归要么迭代,不过还是比较习惯于递归的写法 TITLE 给定一个 n 叉树的根节点 root ,返回 其节点值的 前 ... 
- LeetCode 589. N叉树的前序遍历(N-ary Tree Preorder Traversal)
		589. N叉树的前序遍历 589. N-ary Tree Preorder Traversal LeetCode589. N-ary Tree Preorder Traversal 题目描述 给定一 ... 
- [LeetCode] N-ary Tree Preorder Traversal N叉树的前序遍历
		Given an n-ary tree, return the preorder traversal of its nodes' values. For example, given a 3-ary ... 
- LeetCode:N叉树的前序遍历【589】
		LeetCode:N叉树的前序遍历[589] 题目描述 给定一个 N 叉树,返回其节点值的前序遍历. 例如,给定一个 3叉树 : 返回其前序遍历: [1,3,5,6,2,4]. 题目分析 使用栈结构. ... 
- Java实现 LeetCode 589 N叉树的前序遍历(遍历树)
		589. N叉树的前序遍历 给定一个 N 叉树,返回其节点值的前序遍历. 例如,给定一个 3叉树 : 返回其前序遍历: [1,3,5,6,2,4]. 说明: 递归法很简单,你可以使用迭代法完成此题吗? ... 
- Leetcode589.N-ary Tree Preorder TraversalN叉树的前序遍历
		给定一个 N 叉树,返回其节点值的前序遍历. class Node { public: int val; vector<Node*> children; Node() {} Node(in ... 
- 589. N叉树的前序遍历
		[题目] 给定一个 N 叉树,返回其节点值的前序遍历. 例如,给定一个 3叉树 : 返回其前序遍历: [1,3,5,6,2,4]. [解析] """ # Definiti ... 
- C#LeetCode刷题之#589-N叉树的前序遍历(N-ary Tree Preorder Traversal)
		问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/4090 访问. 给定一个 N 叉树,返回其节点值的前序遍历. 例如 ... 
- POJ 2255 Tree Recovery——二叉树的前序遍历、后序遍历、中序遍历规则(递归)
		1.前序遍历的规则:(根左右) (1)访问根节点 (2)前序遍历左子树 (3)前序遍历右子树 对于图中二叉树,前序遍历结果:ABDECF 2.中序遍历的规则:(左根右) (1)中序遍历左子树 (2)访 ... 
随机推荐
- JavaSE19-IO特殊流和Properties集合
			1.IO特殊操作流 1.1 标准输入流 System类中有两个静态的成员变量 public static final InputStream in:标准输入流.通常该流对应于键盘输入或由主机环境或用户 ... 
- ssh-copy-id三步实现SSH免密登录
			背景 在日常工作中,不希望每次登录都输入密码,这里主要介绍一种简单的配置Linux主机间免密登录的方式 先了解两个核心命令: ssh-keygen :产生公钥和私钥对 ssh-copy-id:将北极的 ... 
- Java获取到异常信息进行保存(非Copy)
			吐槽:不知道从什么时候开始,各大博客网站的文章开始各种复制粘贴,想好好找一个解决方法,搜索出来的博客基本上千篇一律,主要是能解决问题也还行,还解决不了问题这就恶心了.... 所以被迫自己写一篇文章,然 ... 
- 安利一波这12个IDEA插件,太香了!
			这里补充一下常用的插件, 非常值得安利一波! 1.日晒主题 Solarized Themes 推荐指数:☆☆☆☆☆ 推荐理由:日晒主题本身是为vim定制的.后来移植到ide 非常酷!配色非常耐看. ... 
- iOS  UIcollectionView 实现卡牌翻转效果
			- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typica ... 
- c# 递归 yield关键字的用法
			1.yield实现的功能 yield return: 先看下面的代码,通过yield return实现了类似用foreach遍历数组的功能,说明yield return也是用来实现迭代器的功能的. u ... 
- 使用NPOI读取Word文档内容并进行修改
			前言 网上使用NPOI读取Word文件的例子现在也不少,本文就是参考网上大神们的例子进行修改以适应自己需求的. 参考博文 http://www.cnblogs.com/mahongbiao/p/376 ... 
- 阿里巴巴java开发手册-泰山版 下载
			最近,阿里的<Java开发手册>又更新了,这个版本历经一年的修炼,取名:<Java开发手册(泰山版)>正式出道.正所谓无规矩不成方圆,在程序员的世界里,也存在很多规范,阿里出版 ... 
- react脚手架抽离webpack报错解决
			我们在写react项目的时候,可能原有的webpack配置不满足我们的需求,需要自己去配置,可是你在创建脚手架的时候并不能在外部找到webpack文件,脚手架的webpack文件在node_modul ... 
- mysql plugin
			mysql plugin 概要 mysql可以通过启动参数,系统命令mysql_install,mysql命令install plugin来加载指定的插件 mysql的存储引擎被设计成插件式,可以根据 ... 
