difficulty:中等
給定乙個二叉樹,在樹的最後一行找到最左邊的值。
示例 1:
輸入:
2/ \
1 3
輸出:1
示例 2:
輸入:
1/ \
2 3
/ / \
4 5 6/7
輸出:7
注意:您可以假設樹(即給定的根節點)不為null。
solution
開始的時候把這道題想得太難了,層序遍歷的方法沒有用對,該題是層序遍歷的變種,一層一層遍歷下來,返回最先沒有子節點的節點的val,即為樹左下角的值。
# definition for a binary tree node.
# class treenode:
# def __init__(self, x):
# self.val = x
# self.left = none
# self.right = none
class solution:
def findbottomleftvalue(self, root: treenode) -> int:
queue = [root]
while queue:
root = queue.pop(0)
if root.right:
if root.left:
return root.val
513 找樹左下角的值
給定乙個二叉樹,在樹的最後一行找到最左邊的值。示例 1 輸入 2 1 3 輸出 1 示例 2 輸入 1 2 3 4 5 6 7 輸出 7思路 維護乙個最大深度max depth如果深度更新,則對應的值也更新。這裡注意先更新右邊再更新左邊,這樣最後的值將會是最左邊的值,左邊的值會把右邊的覆蓋掉,如果深...
leetcode刷題筆記 513 找樹左下角的值
給定乙個二叉樹,在樹的最後一行找到最左邊的值。示例 1 輸入 2 1 3 輸出 1 示例 2 輸入 1 2 3 4 5 6 7輸出 7bfs很簡單暴力,沒啥好說的,同一層次結點從左往右或者從右往左依次遍歷,因為這裡要求最左的值,從右往左遍歷一下 definition for a binary tre...
LeetCode 513 找樹左下角的值
題目描述 給定乙個二叉樹,在樹的最後一行找到最左邊的值。示例 1 輸入 2 1 3 輸出 1 示例 2 輸入 1 2 3 4 5 6 7 輸出 7 注意 您可以假設樹 即給定的根節點 不為 null。思路1 此題目第一眼看到就想起了二叉樹的右檢視。這個題跟此題類似,可以按照二叉樹的左檢視來做,最後只...