easy404. Sum of Left Leaves

Posted Sherry_Yang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了easy404. Sum of Left Leaves相关的知识,希望对你有一定的参考价值。

求所有左节点的和。

你说你是不是傻,一个人对你好不好,不能只听他说什么,要看做什么,可是哦,连说都不说的时候,就是真的不在意了。

换位思考,我不会像TA这样。话说,记得顺手下个单买个东西,说一句太晚了回去路上注意安全是很容易被忘记的事情么?

兴致勃勃给我讲组会的笑话,这些破事情我真的不太在意的,和我有什么关系呢,我在外面很冷很难受啊,我处境很糟糕啊,我也很头疼啊。

对不起,我只能感受到你不想做事情的怠惰和不专心,体会不到你嘻嘻哈哈讲组会上笑话的时候所谓的一天都很头疼。

随便一个小事情,哪怕是提醒他喝泡腾片,下单买爱吃的东西这种事情都记在手机每日提醒里的我,是多么愚蠢啊。

我自己的事情,可以自己做到,我会保护自己然后努力学习毕业的,就不劳烦您担心了。

/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
 * };
 */
class Solution {
public:
    int sumOfLeftLeaves(TreeNode* root) {
        
        if(root==NULL) 
            return 0;
        else if(root->left!=NULL && root->left->left==NULL && root->left->right==NULL) //相当于递归的终止情形
            return root->left->val+sumOfLeftLeaves(root->right);
        else 
            return sumOfLeftLeaves(root->left)+sumOfLeftLeaves(root->right);
        //这个题分成以下几种情况进行讨论
        //--如果当前节点是空,毫无疑问返回0
        //--如果有左节点,但是左节点没有任何的子节点(左节点的值+右子树的和)
        //--其他的情况:左子树和+右子树和
        
        
        //傻孩子,这是你想的最好,但是错的最离谱的一次
        /*
        if (root == NULL || (root->left == NULL && root->right == NULL))
            return 0; 
        if (root->left == NULL && root->right != NULL)
            return sumOfLeftLeaves(root->right);
        if (root->left != NULL && root->right == NULL)
            return root->left->val + sumOfLeftLeaves(root->left);
        if (root->left != NULL && root->right != NULL)
            return root->left->val + sumOfLeftLeaves(root->left) + sumOfLeftLeaves(root->right);
        */
    }
};

 

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

404. Sum of Left Leaves

Leetcode 404. Sum of Left Leaves

404. Sum of Left Leaves

#Leetcode# 404. Sum of Left Leaves

404. Sum of Left Leaves

LeetCode 404. Sum of Left Leaves