給定乙個二叉樹,在樹的最後一行找到最左邊的值。在正常的二叉樹層次遍歷中,從左到右遍歷,最後乙個輸出的節點是二叉樹最右下角的節點,那麼每一層從右到左遍歷,則最後乙個輸出的節點第最左下角的節點。示例 1:
輸入:2
/ \1 3
輸出:1
示例 2:
輸入:1
/ \2 3
/ / \
4 5 6/7
輸出:7
注意: 您可以假設樹(即給定的根節點)不為 null。
# 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
"""q =
res =
while q:
t=q.pop(0)
if t.right:
if t.left:
return res[-1].val
LeetCode 513 找樹左下角的值
題目描述 給定乙個二叉樹,在樹的最後一行找到最左邊的值。示例 1 輸入 2 1 3 輸出 1 示例 2 輸入 1 2 3 4 5 6 7 輸出 7 注意 您可以假設樹 即給定的根節點 不為 null。思路1 此題目第一眼看到就想起了二叉樹的右檢視。這個題跟此題類似,可以按照二叉樹的左檢視來做,最後只...
LeetCode 513 找樹左下角的值
給定乙個二叉樹,在樹的最後一行找到最左邊的值。示例 1 輸入 2 1 3 輸出 1示例 2 輸入 1 2 3 4 5 6 7輸出 7我們可以使用層序遍歷的方式來儲存元素,乙個bfs,可以先把右節點加入佇列,然後 最後乙個佇列的結點就是 最左邊的值了 definition for a binary t...
LeetCode513 找樹左下角的值
樹的最後一行的最左邊的值,也就是層次遍歷時樹的最後一行的第乙個遍歷到的節點。因此我們可以對樹做乙個層次遍歷,遍歷到的節點存在乙個二維vector裡,每一維vector存放一行樹的節點。遍歷結束之後,直接返回最後一層的第乙個節點,就是答案。如下 definition for a binary tree...