我是靠谱客的博主 务实花瓣,这篇文章主要介绍LeetCode题解(0404):计算二叉树的左子叶之和(Python),现在分享给大家,希望可以做个参考。

题目:原题链接(简单)

解法时间复杂度空间复杂度执行用时
Ans 1 (Python)O(n)O(n)44ms (65.99%)

LeetCode的Python执行用时随缘,只要时间复杂度没有明显差异,执行用时一般都在同一个量级,仅作参考意义。

解法一(递归):

def sumOfLeftLeaves(self, root: TreeNode) -> int:
    def helper(node, maybe=False):
        if node is None:
            return 0
        if node.left is None and node.right is None:
            if maybe:
                return node.val
            else:
                return 0
        elif node.right is None:
            return helper(node.left, maybe=True)
        elif node.left is None:
            return helper(node.right)
        else:
            return helper(node.left, maybe=True) + helper(node.right)

    return helper(root)

最后

以上就是务实花瓣最近收集整理的关于LeetCode题解(0404):计算二叉树的左子叶之和(Python)的全部内容,更多相关LeetCode题解(0404):计算二叉树内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(229)

评论列表共有 0 条评论

立即
投稿
返回
顶部