本文主要是介绍404、左叶子之和,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题解:可以采用后序递归遍历的方式,先将左右子树的左叶子节点值计算出来,最后相加。
当遍历到左叶子节点的父节点时就开始处理,将左叶子节点的值记录下来。
代码如下:
class Solution {
public:int sumOfLeftLeaves(TreeNode* root) {if (root == NULL) return 0;int leftValue = 0;if (root->left != NULL && root->left->left == NULL && root->left->right == NULL) {leftValue = root->left->val;}return leftValue + sumOfLeftLeaves(root->left) + sumOfLeftLeaves(root->right);}
};
错误总结:
在递归中,在单层递归逻辑中,开始递归前决不能用ruturn来记录获得的值,否则递归就不会开始。
这篇关于404、左叶子之和的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!