★LeetCode(429)——N叉树的层序遍历(JavaScript)
给定一个 N 叉树,返回其节点值的层序遍历。 (即从左到右,逐层遍历)。
例如,给定一个 3叉树
:
返回其层序遍历:
[
[1],
[3,2,4],
[5,6]
]
说明:
- 树的深度不会超过
1000
。 - 树的节点总数不会超过
5000
。
/*** // Definition for a Node.* function Node(val,children) {* this.val = val;* this.children = children;* };*/
/*** @param {Node} root* @return {number[][]}*/
var levelOrder = function(root) {};
个人解法
思路:根结点入队,循环依次出队,当结点出队时,其孩子结点入队。
var levelOrder = function(root) {if(root === null){return [];}var results = [],arr = [];//root入队arr.push(root);//循环出队while(arr.length !== 0){//先记录当层节点var result = [];arr.forEach(element => {result.push(element.val);});results.push([...result]);//当层节点的子节点入队,并且当层节点出队var length = arr.length;for(var i = 0; i < length; i++){var node = arr.shift();for(var j = 0; j < node.children.length; j++){arr.push(node.children[j]);}}}return results;
};
★LeetCode(429)——N叉树的层序遍历(JavaScript)相关推荐
- LeetCode 429. N叉树的层序遍历(queue)
1. 题目 返回其层序遍历:[[1],[3,2,4],[5,6] ] 2. 解题 queue队列解题 /* // Definition for a Node. class Node { public: ...
- 力扣题目——429. N 叉树的层序遍历
注:本文的代码实现使用的是 JS(JavaScript),为前端中想使用JS练习算法和数据结构的小伙伴提供解题思路. 描述 给定一个 N 叉树,返回其节点值的层序遍历.(即从左到右,逐层遍历). 树的 ...
- 429. N 叉树的层序遍历 c++ 队列
给定一个 N 叉树,返回其节点值的层序遍历.(即从左到右,逐层遍历). 树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例). 输入:root = [1,null,3,2,4,nu ...
- leetcode题解102-二叉树的层序遍历
问题描述 给你一个二叉树,请你返回其按 层序遍历 得到的节点值. (即逐层地,从左到右访问所有节点). 示例: 二叉树:[3,9,20,null,null,15,7], 返回其层次遍历结果: [ [3 ...
- 力扣429. N 叉树的层序遍历(JavaScript)
var levelOrder = function(root) {let arr=[]let qq=[root]if(root==null){return arr}while(qq.length){l ...
- 【LeetCode】专题一 二叉树层序遍历
二叉树层序遍历 在本文中,我将会选取LeetCode上二叉树层序遍历的多道例题,并给出解答,通过多道题我们就可以发现,二叉树的层序遍历并不复杂,并且有着共通点. 102. 二叉树的层序遍历 给你二叉树 ...
- LeetCode429. N 叉树的层序遍历
题目 429. N 叉树的层序遍历 给定一个 N 叉树,返回其节点值的层序遍历.(即从左到右,逐层遍历). 树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例). 示例 1: 输入 ...
- LeetCode每日一题:N叉树的层序遍历(No.429)
题目:N叉树的层序遍历 给定一个 N 叉树,返回其节点值的层序遍历. (即从左到右,逐层遍历). 复制代码 示例: 例如,给定一个 3叉树 : 复制代码 返回其层序遍历: [[1],[3,2,4],[ ...
- 1533. N叉树的层序遍历
1533. N叉树的层序遍历 给定一个 N 叉树,返回其节点值的层序遍历. (即从左到右,逐层遍历). 例如,给定一个 3叉树 : 返回其层序遍历: [ [1], [3,2,4], [5,6] ] ...
最新文章
- Python入门100题 | 第013题
- 短学期实训——第二篇
- Create your own blockchain amp; cryptocurrency! - understand blockchains by creating one in python
- java.lang.reflect.Method.getGenericParameterTypes()方法示例
- c# uri.host_C#| Uri.CheckHostName()方法与示例
- vue data变量之间相互赋值或进行数据联动
- JAVA实体类不要使用基本类型,基本类型包含byte、int、short、long、float、double、char、boolean...
- OGNL在Struts2中的应用
- Linux下tar压缩与解压缩文件
- Method类及相关类解读
- 查询计算机软件运行的时间,BootTime(电脑运行时间查询)
- 【计算机网络】学习笔记
- 高匿代理,混淆代理,匿名代理,透明代理略解
- win32Day05:GDI绘图
- 财路网每日原创推送:区块链金融为何广受互联网巨头追捧?
- ART笔记1:模糊自适应共振理论
- vulnhub:Typo靶机
- ENVI教程:InSAR技术,相位解缠
- 无人值守远程控制电脑怎么实现,用什么软件?
- NVIDIA TX2刷ubuntu16.04、刷设备树教程