給你乙個二叉樹,請你返回其按 層序遍歷 得到的節點值。 (即逐層地,從左到右訪問所有節點)。
示例:
二叉樹:[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型陣列儲存...