若用二叉链表作为二叉树的存储表示,试用编写递归算法,统计二叉树中叶子结点的个数
收起
知与谁同
2018-07-20 13:48:11
3786
0
1
条回答
写回答
取消
提交回答
-
int count(Node *root) {
if (!root) return 0;
int ret = count(root->leftChild) + count(root->rightChild);
return ret == 0 ? 1 : ret;
}
第一行: 空指针返回0
第二行:统计左右子树的叶子节点个数
第三行:如果左右子树的叶子节点个数为0,则本身是一个叶子节点,返回1;否则返回左右子树的叶子节点个数。
2019-07-17 22:54:45