题解 | #按之字形顺序打印二叉树#
按之字形顺序打印二叉树
http://www.nowcoder.com/practice/91b69814117f4e8097390d107d2efbe0
//与层序遍历一样的模板,有些许地方变动,如下标注
function Print(root)
{
// write code here
var res=[],num=0;
if(!root) return res
var queue=[root];
// queue.push(root);
while(queue.length){
var len=queue.length;
var level=[];//存放每一层的节点
num++;//表示层数
for(var i=0;i<len;i++){
var cur=queue.shift();
level.push(cur.val)
cur.left && queue.push(cur.left);
cur.right && queue.push(cur.right);
}
if(num%2 == 0) level.reverse() //判断是否是偶数层,是就反转该层的数组
res.push(level)
}
return res
}
function Print(root)
{
// write code here
var res=[],num=0;
if(!root) return res
var queue=[root];
// queue.push(root);
while(queue.length){
var len=queue.length;
var level=[];//存放每一层的节点
num++;//表示层数
for(var i=0;i<len;i++){
var cur=queue.shift();
level.push(cur.val)
cur.left && queue.push(cur.left);
cur.right && queue.push(cur.right);
}
if(num%2 == 0) level.reverse() //判断是否是偶数层,是就反转该层的数组
res.push(level)
}
return res
}