404. Sum of Left Leaves
Find the sum of all left leaves in a given binary tree.
Example:
3 / 9 20 / 15 7 There are two left leaves in the binary tree, with values 9 and 15 respectively. Return 24.
求所有的左叶子节点的和
java代码:
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ public class Solution { private void searchBT(TreeNode root, int[] sum){ if(root.left!=null){ if(root.left.left==null&&root.left.right==null)sum[0]+=root.left.val; } if(root.left!=null)searchBT(root.left,sum); if(root.right!=null)searchBT(root.right,sum); } public int sumOfLeftLeaves(TreeNode root) { int[] sum={0};////要是调用函数时改变sum的值,只有将其声明为对象,所以这里将其声明为int[] if(root!=null)searchBT(root,sum); return sum[0]; } }