编写递归算法,计算二叉树中叶子结点的数目。
时间: 2024-05-11 10:17:37 浏览: 19
编写递归算法,计算二叉树中叶子结点的数目
5星 · 资源好评率100%
可以的,这个问题属于计算问题,可以回答。对于一个二叉树,如果它是空树,则叶子节点数为0,否则叶子节点数为它的左子树的叶子节点数加上右子树的叶子节点数。具体的递归算法实现可以这样:
```
int countLeaves(TreeNode* root) {
if (!root) {
return 0;
}
if (!root->left && !root->right) {
return 1;
}
return countLeaves(root->left) + countLeaves(root->right);
}
```
其中 TreeNode 是一个表示二叉树节点的结构体。
阅读全文