1. 程式人生 > >LeetCode404Sum of Left Leaves左葉子之和

LeetCode404Sum of Left Leaves左葉子之和

計算給定二叉樹的所有左葉子之和。

示例:

       3

      / \

   9    20

         / \

     15   7

在這個二叉樹中,有兩個左葉子,分別是 9 和 15,所以返回 24

class Solution {
public:
    int sum = 0;
    int sumOfLeftLeaves(TreeNode* root)
    {
        if(root == NULL)
            return 0;
        if(root ->left == NULL && root ->right  == NULL)
            return 0;
        if(root ->left != NULL && root ->left ->left == NULL && root ->left ->right == NULL)
        {
            sum += root ->left ->val;
        }
        if(root ->left)
        {
            sumOfLeftLeaves(root ->left);
        }
        if(root ->right)
        {
            sumOfLeftLeaves(root ->right);
        }
        return sum;
    }
};