Sum of Left Leaves
2016-09-25 19:51
211 查看
Find the sum of all left leaves in a given binary tree.
Example:
Example:
3 / \ 9 20 / \ 15 7 There are two left leaves in the binary tree, with values 9 and 15 respectively. Return 24.
分析:深度递归DFS,遇到左叶子节点就加入sum;
/** * 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 { void dfs(TreeNode* root,int &sum) { if(!root) return ; TreeNode* l=root->left,*r=root->right; if(l&&!l->left&&!l->right)//找到左叶子节点 { sum+=l->val; } else dfs(l,sum);//否则接着遍历左子树 if(r)//左子树非空,遍历右子树 dfs(r,sum); } public: int sumOfLeftLeaves(TreeNode* root) { int sum=0; dfs(root,sum); return sum; } };
相关文章推荐
- leetcode 404 Sum of Left Leaves
- LeetCode 404 Sum of Left Leaves
- Sum of Left Leaves
- LeetCode #404 - Sum of Left Leaves - Easy
- Sum of Left Leaves
- LeetCode: Sum of Left Leaves
- leetcode(404):Sum of Left Leaves
- Sum of Left Leaves
- Sum of Left Leaves
- LeetCode 404: Sum of Left Leaves
- LeetCode #404: Sum of Left Leaves
- LeetCode之Sum of Left Leaves(Kotlin)
- LeetCode[404] Sum of Left Leaves
- 【LeetCode】Sum of Left Leaves 左叶子之和
- LeetCode : Sum of Left Leaves
- LeetCode之Sum of Left Leaves
- leetcode404: Sum of Left Leaves
- 【LeetCode】404 Sum of Left Leaves(java实现)
- leetcode_Sum of Left Leaves
- Sum of Left Leaves