您的位置:首页 > 其它

LC-Sum of Left Leaves

2018-02-12 23:39 204 查看
# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution(object):
def sumOfLeftLeaves(self, root):
"""
:type root: TreeNode
:rtype: int
"""
if not root:
return 0
if root.left and not root.left.left and not root.left.right:
return root.left.val + self.sumOfLeftLeaves(root.right)
return self.sumOfLeftLeaves(root.left) + self.sumOfLeftLeaves(root.right)


0,参考后的代码

1,题目要求:



也就是计算一棵树中所有的左叶子节点的值的和。

2,依旧是以一种递归的算法,需要注意的是对于节点的条件判断:当节点为空时,返回值为0。对于一个节点,如果其左孩子不为空但是左孩子没有孩子,说明该节点的左孩子为左叶子节点,也即符合题目条件的节点。按照要求,取该节点左孩子的值并加上该节点右孩子的递归算法(找右子树中的左叶节点)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: