求完全二叉的节点个数
题目描述
题目链接
解题思路
class Solution {
public:
int countNodes(TreeNode* root)
{
if(root==nullptr)
{
return 0;
}
return 1+countNodes(root->left)+countNodes(root->right);
}
};
求左叶子节点之和
题目描述
题目链接
解题思路
左叶子之和
class Solution {
public:
int sumOfLeftLeaves(TreeNode* root)
{
if(root==NULL)
{
return 0;
}
int sum=0;
if(root->left&&root->left->left==NULL&&root->left->right==NULL)
{
sum=root->left->val;
}
return sum+sumOfLeftLeaves(root->left)+sumOfLeftLeaves(root->right);
}
};
右叶子之和
class Solution {
public:
int sumOfLeftLeaves(TreeNode* root)
{
if(root==NULL)
{
return 0;
}
int sum=0;
if(root->right&&root->right->right==NULL&&root->right->left==NULL)
{
sum=root->left->val;
}
return sum+sumOfLeftLeaves(root->left)+sumOfLeftLeaves(root->right);
}
};