博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode讲解--589. N-ary Tree Preorder Traversal
阅读量:7098 次
发布时间:2019-06-28

本文共 1602 字,大约阅读时间需要 5 分钟。

题目

Given an n-ary tree, return the preorder traversal of its nodes' values.

For example, given a 3-ary tree:

Return its preorder traversal as: [1,3,5,6,2,4].

Note:

Recursive solution is trivial, could you do it iteratively?

讲解

如果用递归来解题的话,还是非常简单的。如果要用迭代来解题,无非就是用栈来实现。要注意的一点是,需要一个额外的栈来把压栈的顺序倒一下序。

Java代码

递归代码:

/*// Definition for a Node.class Node {    public int val;    public List
children; public Node() {} public Node(int _val,List
_children) { val = _val; children = _children; }};*/class Solution { private List
result = new ArrayList<>(); public List
preorder(Node root) { if(root==null){ return result; } result.add(root.val); for(Node node:root.children){ preorder(node); } return result; }}

迭代代码:

/*// Definition for a Node.class Node {    public int val;    public List
children; public Node() {} public Node(int _val,List
_children) { val = _val; children = _children; }};*/class Solution { private List
result = new ArrayList<>(); private Stack
stack = new Stack<>(); private Stack
stack_temp = new Stack(); public List
preorder(Node root) { if(root==null){ return result; } stack.push(root); while(!stack.empty()){ Node theNode = stack.pop(); result.add(theNode.val); for(Node node:theNode.children){ stack_temp.push(node); } while(!stack_temp.empty()){ stack.push(stack_temp.pop()); } } return result; }}

转载地址:http://sfeql.baihongyu.com/

你可能感兴趣的文章
[置顶] Jquery之ShowLoading遮罩组件
查看>>
ACE 格式化输出到console
查看>>
display:none与visibility:hidden的区别。
查看>>
LeetCode-287 寻找重复数
查看>>
架构师不可不知的十大可扩展架构
查看>>
HiveServer2 Impersonation
查看>>
oracle查询当前用户下的所有表、表对应的所有表字段、表的主键字段名称
查看>>
maven的profile和filter插件管理配置项
查看>>
Centos 7源码编译安装MySQL5.5及配置
查看>>
我的友情链接
查看>>
JUnit4中使用Hamcrest测试框架的assertThat断言_小实例
查看>>
Linux Server - APT
查看>>
VMware Workstation 虚拟机问题!
查看>>
我的友情链接
查看>>
JavaScript函数
查看>>
ubuntu16.04 改变网卡名称 Ubuntu server 14.04 LTS 升级 16.04 LTS
查看>>
序列化与反序列化的简便实用封装 续
查看>>
PHP5.1下安装json扩展
查看>>
Skype For Business Server 2015 离线消息
查看>>
centos6.5上dstat的安装
查看>>