Sum of Left Leaves

Posted 北叶青藤

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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.
 1 /**
 2  * Definition for a binary tree node.
 3  * public class TreeNode {
 4  *     int val;
 5  *     TreeNode left;
 6  *     TreeNode right;
 7  *     TreeNode(int x) { val = x; }
 8  * }
 9  */
10 public class Solution {
11     public int sumOfLeftLeaves(TreeNode root) {
12         int[] total = new int[1];
13         helper(root, false, total);
14         return total[0];
15     }
16     
17     void helper(TreeNode root, boolean isLeft, int[] total) {
18         if (root == null) return;
19         if (root.left == null && root.right == null) {
20             if (isLeft) {
21                 total[0] += root.val;
22             }
23             return;
24         } 
25         
26         helper(root.left, true, total);
27         helper(root.right, false, total);
28         
29     }
30 }

 

以上是关于Sum of Left Leaves的主要内容,如果未能解决你的问题,请参考以下文章

leetcode-404. Sum of Left Leaves

LeetCode题解之 Sum of Left Leaves

404. Sum of Left Leaves

Leetcode 404. Sum of Left Leaves

Sum of Left Leaves

Sum of Left Leaves