給定乙個二叉樹,在樹的最後一行找到最左邊的值。
示例 1:
輸入:
2/ \
13輸出:1
示例 2:
輸入:
1/ \
23// \ 456
/7輸出:7
注意:您可以假設樹(即給定的根節點)不為null。
這裡可以對二叉樹進行層序遍歷,而層序遍歷就是基於廣度優先遍歷的。
在遍歷的過程中,我們初始化乙個佇列來儲存當前層的節點,這個過程中,需要先將根節點的右子節點加入到佇列中,再將其左子節點加入到佇列中。
這個過程中,將對列元素出隊,並加入到res陣列中,這樣陣列的最後乙個值就是二叉樹左下角的值。
複雜度分析:
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 此題目第一眼看到就想起了二叉樹的右檢視。這個題跟此題類似,可以按照二叉樹的左檢視來做,最後只...