找到所有左側(cè)葉子結(jié)點的和曲楚。
稍微改變一下遞歸鏈伏伐,我們不遞歸右邊的葉子結(jié)點桩警,還有這個函數(shù)對于root是leaf的時候需要特殊判斷
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
class Solution {
public int sumOfLeftLeaves(TreeNode root) {
if(isLeaf(root)) return 0;
return search_left_leaves(root);
}
private int search_left_leaves(TreeNode root)
{
if(root==null) return 0;
if(isLeaf(root)) return root.val;
int left = 0 ;
int right= 0 ;
left=search_left_leaves(root.left);
if(!isLeaf(root.right))
right=search_left_leaves(root.right);
return left+right;
}
private boolean isLeaf(TreeNode root)
{
if(root==null) return false;
return root.left==null&&root.right==null;
}
}