Leetcode404. 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.

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




你可能感兴趣的:(面试题算法题)