[LeetCode javaScript] 107. 二叉樹的層次遍歷 II
阿新 • • 發佈:2018-12-12
給定一個二叉樹,返回其節點值自底向上的層次遍歷。 (即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷)
例如: 給定二叉樹 [3,9,20,null,null,15,7],
3
/ 9 20 / 15 7 返回其自底向上的層次遍歷為:
[ [15,7], [9,20], [3] ]
/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } */ /** * @param {TreeNode} root * @return {number[][]} */ var levelOrderBottom = function(root) { if(root==null){ return []; } var result=[]; var queue=[]; queue.push(root); while(queue.length!=0){ var node=[]; var nodeValue=[]; for(var i in queue){ if(queue[i].left!=null){ node.push(queue[i].left); } if(queue[i].right!=null){ node.push(queue[i].right); } nodeValue.push(queue[i].val); } result.push(nodeValue); queue=node; } return result.reverse(); };