429. N叉树的层序遍历

tech2022-07-30  143

给定一个 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) { const q = []; const res = []; if(!root) return q; let h=0; root.height = h; q.push(root); while(q.length !== 0) { const top = q.shift(); const h = top.height; if(!res[h]) { res[h] = []; } res[h].push(top.val); for(let child of top.children) { child.height = h + 1; q.push(child); } } return res; };

 

最新回复(0)