zoukankan      html  css  js  c++  java
  • [LC] 112. Path Sum

    Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.

    Note: A leaf is a node with no children.

    Example:

    Given the below binary tree and sum = 22,

          5
         / 
        4   8
       /   / 
      11  13  4
     /        
    7    2      1
    

    return true, as there exist a root-to-leaf path 5->4->11->2 which sum is 22.

     1 # Definition for a binary tree node.
     2 # class TreeNode:
     3 #     def __init__(self, x):
     4 #         self.val = x
     5 #         self.left = None
     6 #         self.right = None
     7 
     8 class Solution:
     9     def hasPathSum(self, root: TreeNode, sum: int) -> bool:
    10         res = self.helper(root, sum)
    11         return res
    12     
    13     def helper(self, root, sum):
    14         if root is None:
    15             return False
    16         if root.left is None and root.right is None:
    17             if sum == root.val:
    18                 return True
    19             else:
    20                 return False
    21         left = self.helper(root.left, sum - root.val)
    22         right = self.helper(root.right, sum - root.val)
    23         return left or right
  • 相关阅读:
    清空map
    读取图片的DLL
    利用SysMailer发送邮件
    使用维度显示
    获取用户所属仓库与库位 Owner 所属仓位
    使用电子邮件模板
    使用SQL获取TableID
    导入数据到excel
    ax附件存取研究
    两步转移 过账
  • 原文地址:https://www.cnblogs.com/xuanlu/p/11684198.html
Copyright © 2011-2022 走看看