leetcode 102 二叉樹的層序遍歷

2021-10-09 15:44:06 字數 1198 閱讀 6941

目錄

一、題目內容

二、解題思路

三、**

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

示例:

二叉樹:[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:

res =

def dfs(root, depth):

if root is none:

return

if depth == len(res):

else:

dfs(root.left, depth + 1)

dfs(root.right, depth + 1)

dfs(root, 0)

return res

if __name__ == '__main__':

a = treenode(3)

a.left = treenode(9)

a.right = treenode(20)

a.right.left = treenode(15)

a.right.right = treenode(7)

s = solution()

ans = s.levelorder(a)

print(ans)

LeetCode 102 二叉樹的遍歷

給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 返回其層次遍歷結果 如下 definition for a binary tree node.public class treenode public class solution list res new ...

LeetCode 102 二叉樹的層次遍歷

題目鏈結 題目描述 給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7 返回其層次遍歷結果 3 9,20 15,7 解決方法 廣度優先 層次 遍歷,使用佇列實現 具體思路 在訪問了乙個節點之後...

LeetCode 102 二叉樹的層次遍歷

給定乙個二叉樹,返回其按層次遍歷的節點值。即逐層地,從左到右訪問所有節點 例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回其層次遍歷結果 3 9,20 15,7 此題需要將各個層的節點分別儲存到不同的陣列中。所以在while迴圈中,加了乙個for迴圈,迴圈次數...