404. Sum of Left Leaves
Easy
Given the root
of a binary tree, return the sum of all left leaves.
A leaf is a node with no children. A left leaf is a leaf that is the left child of another node.
Example 1:
-
Input:
root = [3,9,20,null,null,15,7]
-
Output:
24
-
Explanation:
There are two left leaves in the binary tree, with values 9 and 15 respectively
.
Example 2:
-
Input:
root = [1]
-
Output:
0
Constraints:
- The number of nodes in the tree is in the range
[1, 1000]
. -1000 <= Node.val <= 1000
Solution:
/**
* Definition for a binary tree node.
* class TreeNode {
* public $val = null;
* public $left = null;
* public $right = null;
* function __construct($val = 0, $left = null, $right = null) {
* $this->val = $val;
* $this->left = $left;
* $this->right = $right;
* }
* }
*/
class Solution {
/**
* @param TreeNode $root
* @return Integer
*/
function sumOfLeftLeaves($root) {
if (!$root) {
return 0;
}
$ans = 0;
if ($root->left) {
if (!$root->left->left && !$root->left->right) {
$ans += $root->left->val;
} else {
$ans += $this->sumOfLeftLeaves($root->left);
}
}
$ans += $this->sumOfLeftLeaves($root->right);
return $ans;
}
}
Contact Links
Top comments (0)