一、题目描述
层次遍历(513):https://leetcode.com/problems/find-bottom-left-tree-value/description/
给定一个二叉树,在树的最后一行找到最左边的值。
示例 1:
输入: 2 / \ 1 3 输出: 1
示例 2:
输入: 1 / \ 2 3 / / \ 4 5 6 / 7 输出: 7
注意: 您可以假设树(即给定的根节点)不为 NULL。
二、代码详解
从右到左执行BFS,意味着我们可以简单地返回最后一个节点的值
filter函数
http://www.runoob.com/python3/python3-func-filter.html
# Definition for a binary tree node.
# class TreeNode(object):
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution(object):
def findBottomLeftValue(self, root):
"""
:type root: TreeNode
:rtype: int
"""
queue = [root]
for node in queue:
queue += filter(None, (node.right, node.left))
return node.val