Leetcode刷题记录——1302. 层数最深叶子节点的和

在这里插入图片描述

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None

class Solution:
    def __init__(self):
        self.res = []
        self.length = 0
    def deepestLeavesSum(self, root: TreeNode) -> int:
        if root == None:
            return None
        self.rec(root,1)
        return sum(self.res)

    def rec(self,root,depth):
        if root == None:
            return 0
        if depth > self.length:
            self.res = [root.val]
            self.length += 1
        elif depth == self.length:
            self.res.append(root.val)
        self.rec(root.left,depth + 1)
        self.rec(root.right,depth + 1)

猜你喜欢

转载自blog.csdn.net/weixin_41545780/article/details/107623011