class Solution:
def hasPathSum(self, root: TreeNode, sum: int) -> bool:
if not root: #空节点
return True if sum == 0 else False #sum为0才正确,大于或小于0都不正确
if sum < 0:
return False
return self.hasPathSum(root.left, sum-root.val) or self.hasPathSum(root.right, sum-root.val)
class Solution:
def hasPathSum(self, root: TreeNode, sum: int) -> bool:
if not root: #空节点
return False
if not root.left and not root.right: #叶节点
return sum-root.val == 0
#对左右子树递归
return self.hasPathSum(root.left, sum-root.val) or self.hasPathSum(root.right, sum-root.val)