给出一个二叉树,求出这个二叉树所有左叶子节点的和。
采用DFS递归调用sumOfLeftLeaves,引入一个boolean变量判断是否为左子树。
class Solution {
int sum = 0;
public int sumOfLeftLeaves(TreeNode root) {
if(root == null) return 0;
help(root,false);
return sum;
}
public void help(TreeNode root,boolean left){
if(root == null) return;
if(left&&root.left==null&&root.right==null)
sum+=root.val;
help(root.left,true);
help(root.right,false);
}
}