/* * function TreeNode(x) { * this.val = x; * this.left = null; * this.right = null; * } */ /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param root TreeNode类 * @return string字符串一维数组 */ function levelOrder( root ) { const list = []; if(!root) { return list } const queue = [root]; while(queue.length) { let str = '' let size = queue.length while(size-- > 0) { const node = queue.shift() str += node.val node.left && queue.push(node.left) node.right && queue.push(node.right) } list.push(str) } return list } module.exports = { levelOrder : levelOrder };
解题思路:queue队列中的节点代表树的每一行的节点,将每个节点的val累加即为每一行的值