2->5","1->3"]解釋:所有根節點到葉子節點的路徑為:1->2->5,1->3Solution:運用遞歸的思想,從根節點遍歷二叉樹,如果當前節點不是葉子節點,則將當前節點添加到路徑最后并繼續遞歸他的孩子節點。如果當前節點是葉子節點,那么將當前節點添加到路徑最后,得到一條路徑,并把當前這條路徑添加到路徑集合里。#D" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

LeetCode刷題筆記257:二叉樹的所有路徑(Python實現)

系統 1716 0

題目描述:

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

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

示例:

            
              輸入:

   1
 /   \
2     3
 \
  5

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

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

            
          

Solution:

運用遞歸的思想,從根節點遍歷二叉樹,如果當前節點不是葉子節點,則將當前節點添加到路徑最后并繼續遞歸他的孩子節點。如果當前節點是葉子節點,那么將當前節點添加到路徑最后,得到一條路徑,并把當前這條路徑添加到路徑集合里。

            
              # Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution(object):
    def binaryTreePaths(self, root):
        """
        :type root: TreeNode
        :rtype: List[str]
        """
        paths = []
        def deep(root,path):
            if not root:return
            path = path + [str(root.val)]
            if not root.left and not root.right:
                return paths.append("->".join(path))
            deep(root.left,path)
            deep(root.right,path)
        deep(root,[])
        return paths
            
          

?


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 交口县| 巴彦县| 盖州市| 崇左市| 武汉市| 如东县| 安义县| 扶沟县| 香格里拉县| 美姑县| 遵义县| 洪湖市| 鸡东县| 融水| 建昌县| 桐梓县| 萍乡市| 丹寨县| 雷波县| 藁城市| 衡南县| 阳高县| 津市市| 华宁县| 安图县| 始兴县| 罗平县| 高陵县| 类乌齐县| 文水县| 新营市| 盖州市| 奈曼旗| 彭阳县| 绥滨县| 德令哈市| 阿荣旗| 定边县| 龙川县| 太湖县| 文成县|