题目
从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。
分析
分层次遍历肯定要使用队列来完成了,没啥好分析的
代码实现
/* function TreeNode(x) { this.val = x; this.left = null; this.right = null; } */ function Print(r) { if(r === null) return []; var q = []; var index = 0; var res = []; res.push([]) q.push(r); q.push(null); while(q.length !== 0){ var cur = q.shift(); if(cur !== null){ res[index].push(cur.val); if(cur.left !== null) q.push(cur.left); if(cur.right !== null) q.push(cur.right); }else{ if(q.length !== 0){ res.push([]); index++; q.push(null); } } } return res; }