Given a binary tree, find the leftmost value in the last row of the 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.
def findBottomLeftValue(root):
if not root:return None
from collections import dequeue
queue = dequeue([root])
while queue:
for i in range(len(queue)):
cur = queue.popleft()
if i == 0:
leftmost = cur.val
if cur.left:
queue.append(cur.left)
if cur.right:
queue.append(cur.right)
return leftmost