leetcode 257 二叉樹的所有路徑

2021-10-08 13:27:21 字數 1134 閱讀 9003

257. 二叉樹的所有路徑

給定乙個二叉樹,返回所有從根節點到葉子節點的路徑。

說明: 葉子節點是指沒有子節點的節點。

示例:輸入:

1

/ \

2 3

\ 5

輸出: [「1->2->5」, 「1->3」]

解釋: 所有根節點到葉子節點的路徑為: 1->2->5, 1->3

使用dfs,從根節點往下面回溯尋找每一條鏈路,並且將其加入字串,到達葉子節點的時候,就加入到輸出out。

# definition for a binary tree node.

# class treenode:

# def __init__(self, x):

# self.val = x

# self.left = none

# self.right = none

class

solution

:def

binarytreepaths

(self, root: treenode)

-> list[

str]

: res =

"" out =

defbacktrack

(root, res):if

not root:

return

ifnot root.left and

not root.right:

res +=

'->'

+str

(root.val)2:

])return

if root.left:

backtrack(root.left, res +

'->'

+str

(root.val)

)if root.right:

backtrack(root.right, res +

'->'

+str

(root.val)

) backtrack(root,"")

return out

LeetCode257 二叉樹的所有路徑

好多天沒寫演算法了,好多天也不更了。今天開始繼續啊,加油!先來乙個簡單的二叉樹練練手哈 給定乙個二叉樹,返回從根節點到葉節點的所有路徑。例如,給定以下二叉樹 1 2 3 5所有根到葉路徑是 1 2 5 1 3 二叉樹先序遍歷一下,遞迴把節點值挨個加入就好了 definition for a bina...

leetcode 257 二叉樹的所有路徑

給定乙個二叉樹,返回所有從根節點到葉子節點的路徑。說明 葉子節點是指沒有子節點的節點。示例 輸入 1 2 3 5 輸出 1 2 5 1 3 解釋 所有根節點到葉子節點的路徑為 1 2 5,1 3 definition for a binary tree node.struct treenode cl...

Leetcode 257 二叉樹的所有路徑

給定乙個二叉樹,返回所有從根節點到葉子節點的路徑。說明 葉子節點是指沒有子節點的節點。示例 輸入 1 2 3 5 輸出 1 2 5 1 3 解釋 所有根節點到葉子節點的路徑為 1 2 5,1 3首先要寫一下我自己的錯誤的思路 利用回溯,到了葉子結點後將當前遍歷到的一位陣列加入到要返回的二維陣列中,當...