# 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: def dfs(node, is_left = False, total = 0): if not node: return total if not node.left and not node.right: if is_left: return total + node.val else: return total return total + dfs(node.left, True) + dfs(node.right) return dfs(root) Complexity Time: O(n) Space: O(n)