题目描述
求一棵完全二叉树的节点的个数,完全二叉树是指一棵深度为h的二叉树,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边,这就是完全二叉树。
样例
输入:一棵二叉树的根节点,二叉树如下
1
/ \
2 3
/ \ /
4 5 6
输出:6
解释:一共6个节点
一句话解决
C++ 代码
int countNodes(TreeNode* root)
{
return root == NULL ? 0 : countNodes(root->left) + countNodes(root->right) + 1;
}