[leetcode] 404. Sum of Left Leaves

网友投稿 290 2022-08-26

[leetcode] 404. Sum of Left Leaves

Description

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.

分析

题目的意思是:求二叉树左叶子节点的和。

树模型一般用递归的方法,终止条件当然是该节点为空。如果左子节点存在,且左叶子节点没有子节点,那么该左节点为题目要求的节点。然后继续递归找出所有的左叶子节点。

代码

/** * 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){ return 0; } int sum=0; if(root->left&&!root->left->left&& !root->left->right){ return root->left->val+sumOfLeftLeaves(root->right); } return sumOfLeftLeaves(root->left)+sumOfLeftLeaves(root->right); }};

参考文献

​​[LeetCode] Sum of Left Leaves 左子叶之和​​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:[leetcode] 838. Push Dominoes
下一篇:内容营销时代,企业如何以低成本方式,快速塑造品牌?(品牌营销和内容营销)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~