Leetcode——112. 路徑總和
給定一個二叉樹和一個目標和,判斷該樹中是否存在根節點到葉子節點的路徑,這條路徑上所有節點值相加等於目標和。
說明: 葉子節點是指沒有子節點的節點。
示例:
給定如下二叉樹,以及目標和 sum = 22,
5
/ \
4 8
/ / \
11 13 4
/ \ \
7 2 1
返回 true, 因為存在目標和為 22 的根節點到葉子節點的路徑 5->4->11->2。
思路:遞迴,需要注意遞迴的終止點,如果左右子樹都為None,直接返回,然後遞迴。
class Solution(object):
def hasPathSum(self, root, sum):
"""
:type root: TreeNode
:type sum: int
:rtype: bool
"""
if root == None:
return False
if root.left==None and root.right==None:
return root.val==sum
if (self.hasPathSum(root.left,sum-root.val)):
return True
if (self.hasPathSum(root.right,sum-root.val)):
return True
return False
相關文章
- LeetCode - 112 - 路徑總和LeetCode
- LeetCode - 113 - 路徑總和 IILeetCode
- Day18 | 513. 找樹左下角的值 | 112.路徑總和、113.路徑總和ii
- Leetcode——113. 路徑總和 IILeetCode
- Leetcode——437. 路徑總和 IIILeetCode
- LeetCode-113-路徑總和 IILeetCode
- LeetCode每日一題: 路徑總和(No.112)LeetCode每日一題
- 【LeetCode擊敗99%+】二叉樹路徑總和LeetCode二叉樹
- LeetCode 112. Path SumLeetCode
- [Leetcode]931.下降路徑最小和LeetCode
- 程式碼隨想錄演算法訓練營第十八天| 513. 找樹左下角的值 112. 路徑總和 113. 路徑總和 II演算法
- 437. 路徑總和 III
- 每日一道演算法題--leetcode 112--路徑總和--python演算法LeetCodePython
- 寫不出來的深度優先搜尋----leetcode113 路徑總和LeetCode
- 二叉樹路徑總和二叉樹
- 113. 路徑總和 II mark
- 每日一道演算法題--leetcode 113--路徑總和II--python演算法LeetCodePython
- [Leetcode]120.三角形路徑最小和LeetCode
- LeetCode-064-最小路徑和LeetCode
- 路徑中./和../和/
- Linux檔案的路徑定位-相對路徑和絕對路徑Linux
- nodejs路徑處理方法和絕對路徑NodeJS
- 【LeetCode】1496. 判斷路徑是否相交(Java)LeetCodeJava
- 絕對路徑和相對路徑的區別,
- 05_Linux相對路徑和絕對路徑Linux
- LeetCode 64號問題 最小路徑和LeetCode
- 檔案路徑問題( ./ 和 ../ 和 @/ )
- python中的路徑問題彙總Python
- LeetCode39. 組合總和LeetCode
- Linux中絕對路徑和相對路徑有什麼區別?Linux
- leetcode 120 三角形最小路徑和LeetCode
- linux中環境便令PATH+路徑 和 路徑 + PATH的區別Linux
- JAVAWEB——絕對路徑和相對路徑,到底加不加“/“,以及解決方案JavaWeb
- python 當前路徑和導包路徑問題全解析Python
- 【Leetcode】62. 不同路徑LeetCode
- LeetCode-62-不同路徑LeetCode
- leetcode:組合總和II(回溯java)LeetCodeJava
- LeetCode216.組合總和lllLeetCode