102 二叉樹的層序遍歷

2021-10-06 03:07:44 字數 920 閱讀 4230

給你乙個二叉樹,請你返回其按 層序遍歷 得到的節點值。 (即逐層地,從左到右訪問所有節點)。

示例:

二叉樹:[3,9,20,null,null,15,7],

3/ \

9 20

/ \

15 7

返回其層次遍歷結果:

[ [3],

[9,20],

[15,7]

]

# definition for a binary tree node.

# class treenode:

# def __init__(self, x):

# self.val = x

# self.left = none

# self.right = none

class solution:

def levelorder(self, root: treenode) -> list[list[int]]:

if not root: return # 特殊情況,root為空直接返回

queue= collections.deque()

#存放最終結果的

res =

while queue:

cur_layer = # 臨時變數,記錄當前層的節點

for _ in range(len(layer)): # 遍歷某一層的節點

node = layer.popleft() # 將要處理的節點彈出

#這個順尋很重要,一定是先左後右

if node.left:

if node.right:

#上一層遍歷完以後,把結果放入到res中

return res

102 二叉樹的層序遍歷

給你乙個二叉樹,請你返回其按 層序遍歷 得到的節點值。即逐層地,從左到右訪問所有節點 示例 二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回其層次遍歷結果 3 9,20 15,7 佇列實現層序遍歷 也可使用棧 遞迴 實現 definition for a binary ...

102 二叉樹的層序遍歷

題目描述 給你乙個二叉樹,請你返回其按 層序遍歷 得到的節點值。即逐層地,從左到右訪問所有節點 示例 二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回其層次遍歷結果 3 9,20 15,7 個人思路 這道題目明確要求使用層序遍歷,按從左到右訪問節點,根據輸出提示來看,...

102 二叉樹的層序遍歷

給你乙個二叉樹,請你返回其按 層序遍歷 得到的節點值。即逐層地,從左到右訪問所有節點 示例 二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回其層序遍歷結果 3 9,20 15,7 解題思路 1.返回乙個二維陣列所以建立乙個二維陣列空間,建立乙個integer型陣列儲存...