一、题目内容 中等
给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。
假设二叉树中至少有一个节点。
示例1:
输入: root = [2,1,3] 输出: 1
示例2:
输入: [1,2,3,4,null,5,6,null,null,7] 输出: 7
提示:
- 二叉树的节点个数的范围是 [1,104]
- -231 <= Node.val <= 231 - 1
二、解题思路
我们用队列,每次从每一层的最右边拿起,放入队列。
每一层遍历完之后,拿到的就是最后一层最左边的值三、具体代码
/**
* @param {TreeNode} root
* @return {number}
*/
var findBottomLeftValue = function (root) {
const queue = [root]
let result = 0
while (queue.length) {
let len = queue.length
for (let i = 0; i < len; i++) {
const node = queue.shift()
result = node.val
if (node.right) queue.push(node.right)
if (node.left) queue.push(node.left)
}
}
return result
};
四、其他解法