404. 左叶子之和

题目

给定二叉树的根节点 root ,返回所有左叶子之和。

示例1:

1
2
3
输入: root = [3,9,20,null,null,15,7] 
输出: 24
解释: 在这个二叉树中,有两个左叶子,分别是 9 和 15,所以返回 24

示例2:

1
2
输入: root = [1]
输出: 0

提示:

  • 节点数在 [1, 1000] 范围内
  • -1000 <= Node.val <= 1000

解法

解法一:

Java

1
2
3
4
5
6
7
8
9
10
11
12
public int sumOfLeftLeaves(TreeNode root) {
if (null == root) {
return 0;
}

int result = 0;
//判断节点是否是左叶子节点,如果是则将它的和累计起来
if(root.left != null && root.left.left == null && root.left.right == null){
result += root.left.val;
}
return result + sumOfLeftLeaves(root.left) + sumOfLeftLeaves(root.right);
}
0%