题解 | #二叉树中和为某一值的路径(一)#

二叉树中和为某一值的路径(一)

http://www.nowcoder.com/practice/508378c0823c423baa723ce448cbfd0c

# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

#

# @param root TreeNode类 
# @param sum int整型 
# @return bool布尔型
#
class Solution:
    
    def hasPathRec(self, root, sumPath, eles):
        
        eles.append(root.val)        
        fLeaf = root.left is None and root.right is None
        if fLeaf and sum(eles) == sumPath:
            print(eles)
            return True
        fLeft = fRight = False
        if root.left:
            fLeft = self.hasPathRec(root.left, sumPath, eles)
        if root.right:
            fRight = self.hasPathRec(root.right, sumPath, eles)
        
        eles.pop()
        return fLeft or fRight
        
    def hasPathSum(self, root, sum):
        # write code here
        if not root:
            return False
        eles = []
        return self.hasPathRec(root, sum, eles)
        
全部评论

相关推荐

rbjjj:太杂了吧,同学,项目似乎都没深度,都是api调度耶,分层架构思想没有体现出来了,前端没有前端优化前端工程化体现,后端微服务以及分层架构没体现以及数据安全也没体现,核心再改改,注重于计算机网络,工程化,底层原理吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务