513. Find Bottom Left Tree Value Difficulty : mediate

来源:互联网 发布:centos创建文件夹命令 编辑:程序博客网 时间:2024/06/10 23:22

Given a binary tree, find the leftmost value in the last row of the tree.

Example 1:

Input:    2   / \  1   3Output:1

Example 2:

Input:        1       / \      2   3     /   / \    4   5   6       /      7Output:7

Note: You may assume the tree (i.e., the given root node) is not NULL.

算法分析:考察树的层序遍历,只不过这个是从右往左遍历,遍历到最后一个节点的时候,那个节点的值就是满足条件的值。C语言不会分配内存,只有Python版,其中需要用到内建filter()函数。

# Definition for a binary tree node.# class TreeNode(object):#     def __init__(self, x):#         self.val = x#         self.left = None#         self.right = Noneclass 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
阅读全文
0 0