题目
解析:
在递归的时候传一个是不是左节点的参数即可
python:
class Solution:
def sumOfLeftLeaves(self, root: TreeNode) -> int:
def helper(node,isleft):
if not node:
return
if isleft and not node.left and not node.right:
self.ans += node.val
helper(node.left,True)
helper(node.right,False)
self.ans = 0
helper(root,False)
return self.ans
C++
class Solution {
int ans = 0;
public:
int sumOfLeftLeaves(TreeNode* root) {
helper(root,false);
return ans;
}
void helper(TreeNode* node, bool isleft){
if (!node) return;
if (isleft && !node->left && !node->right) ans += node->val;
helper(node->left,true);
helper(node->right,false);
}
};