首页 > 其他 > 详细

112.路径总和

时间:2020-06-15 22:05:59      阅读:41      评论:0      收藏:0      [点我收藏+]
class TreeNode:
def __init__(self, x):
self.val = x
self.left = None
self.right = None
# 这道题就是用深搜算法来做的,只要找出一个和为sum的就可以
class Solution:
def hasPathSum(self, root: TreeNode, sum: int) -> bool:
# 定义一个变量,用来存放每次求出的和
num_sum = 0
return self.dfs(root,num_sum,sum)
# 深搜函数
def dfs(self,root,num_sum,sum):
# 这条语句是用来判断根节点是否为空的。
if not root: return False
num_sum += root.val
# 注意这里,不能遍历到叶子节点,因为那样就会返回False。
if not root.left and not root.right and num_sum == sum :
return True
# 注意这里一定是or,
return self.dfs(root.left,num_sum,sum) or self.dfs(root.right,num_sum,sum)

112.路径总和

原文:https://www.cnblogs.com/cong12586/p/13137782.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!