題目描述:
給定乙個二叉樹,返回其節點值自底向上的層次遍歷。 (即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷)
例如:給定二叉樹 [3,9,20,null,null,15,7],
3/ \
9 20
/ \
15 7
返回其自底向上的層次遍歷為:
[[15,7],
[9,20],
[3]]
個人思路:
整體思路同102. 二叉樹的層序遍歷,只不過在新增結果時使用insert操作進行反向新增。具體**如下:
class solution:
def levelorderbottom(self, root: treenode) -> list[list[int]]:
if not root:
return none
queue = deque()
results =
while queue:
size = len(queue)
layer =
for i in range(size):
node = queue.popleft()
if node:
if layer:
results.insert(0, layer)
return results
107 二叉樹的層次遍歷 ii
給定乙個二叉樹,返回其節點值自底向上的層次遍歷。即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷 例如 給定二叉樹 3,9,20,null,null,15,7 判斷當前節點的層數 是否大於 result中的列表數 if layer len result 若是 則在result的前部增加乙個列表...
107 二叉樹的層次遍歷 II
給定乙個二叉樹,返回其節點值自底向上的層次遍歷。即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回其自底向上的層次遍歷為 15,7 9,20 3 解法一 definition for a binary tr...
107 二叉樹的層次遍歷 II
給定乙個二叉樹,返回其節點值自底向上的層次遍歷。即按從葉子節點所在層到根節點所在的層,逐層從左向右遍歷 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 157返回其自底向上的層次遍歷為 15 7 9,20 3 這個遍歷與普通的層次遍歷差別在與需要返回的值的順序是相反的,我...