Skip to content

404. Sum Of Left Leaves

Tree Depth-First Search Breadth-First Search Binary Tree

Problem - Sum Of Left Leaves

Easy

Given the root of a binary tree, return the sum of all left leaves.

A leaf is a node with no children. A left leaf is a leaf that is the left child of another node.

 

Example 1:

Input: root = [3,9,20,null,null,15,7]
Output: 24
Explanation: There are two left leaves in the binary tree, with values 9 and 15 respectively.

Example 2:

Input: root = [1]
Output: 0

 

Constraints:

  • The number of nodes in the tree is in the range [1, 1000].
  • -1000 <= Node.val <= 1000

Solutions

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution:
    def sumOfLeftLeaves(self, root: Optional[TreeNode]) -> int:
        if root is None:
            return 0

        result = self.sumOfLeftLeaves(root.right)
        if root.left:
            if root.left.left == root.left.right:
                result += root.left.val
            else:
                result += self.sumOfLeftLeaves(root.left)

        return result

Submission Stats:

  • Runtime: 0 ms (100.00%)
  • Memory: 18.1 MB (47.74%)