【LeetCode】513. Find Bottom Left Tree Value【M】【73】

来源:互联网 发布:怎么分析数据 编辑:程序博客网 时间:2024/06/16 19:52


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.

Subscribe to see which companies asked this question.


这应该就是一个很直白的广搜,每一层每一层的处理,最后返回最后一层的最左边的元素




# 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):        s = [root]        t = []        res = root.val        while 1:            t = []            for root in s:                if root.left:                    t += root.left,                if root.right:                    t += root.right,            if t == []:                break            else:                s = t[:]                res = t[0].val        return res        """        :type root: TreeNode        :rtype: int        """


这种方法看起来也很厉害的样子


def findLeftMostNode(self, root):     queue = [root]     for node in queue:          queue += filter(None(node.right,node.left))     returnnode.val


0 0
原创粉丝点击