计算二叉树中叶子结点的数目

时间:2021-11-22 22:38:21

编写递归算法,计算二叉树中叶子结点的数目。

二叉链表类型定义:

typedef struct BiTNode {
    TElemType data;
    BiTNode  *lchild, *rchild;
} BiTNode, *BiTree;
实现函数如下:

void Leaves(BiTree bt, int &x)
/* Count the leaf node of the BiTree */
/* whose root node is bt to x.       */
{
    if(bt){
        if(!bt -> lchild && !bt ->rchild){
            ++x;
        }
        else{
            Leaves(bt -> lchild,x);
            Leaves(bt -> rchild,x);
        }
    }
}