Given a binary tree, find the leftmost value in the last row of the tree.
找到二叉树中最下层的最左侧的数值。
将每层的数值从左至右保存,返回最后一层的第一个数即可。
515. Find Largest Value in Each Tree Row
637. Average of Levels in Binary Tree
Example 1:
Input: 2 / \ 1 3 Output: 1
Example 2:
Input: 1 / \ 2 3 / / \ 4 5 6 / 7 Output: 7
Note: You may assume the tree (i.e., the given root node) is not NULL.
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
def findBottomLeftValue(self, root):
"""
:type root: TreeNode
:rtype: int
"""
ans = []
node = [root]
while node:
ans.append([i.val for i in node])
curr = []
for each in node:
if each.left:
curr.append(each.left)
if each.right:
curr.append(each.right)
node = curr
return ans[len(ans)-1][0]