Leecode:103. Binary Tree Zigzag Level Order Traversal (JS解法)
注意每隔一层,顺序反转一下,我的解法主要是采取递归算法,上代码:
function zigzagLevelOrder(root: TreeNode | null): number[][] {
var res:number[][] = [];
helper(root,1,res)
return res;
};
function helper(root:TreeNode | null,level:number,res:number[][]){
if(root == null) return res;
if(res.length < level){
res.push([]);
}
if(level%2 == 0){
res[level-1].unshift(root.val); //偶数层,往数组前添加
}else{
res[level-1].push(root.val); //奇数层,往数组后添加
}
helper(root.left,level+1,res)
helper(root.right,level+1,res)
}