以二叉链表作存储结构,请设计算法求二叉树的结点的个数。
以二叉链表作存储结构,请设计算法求二叉树的结点的个数。
【正确答案】:二叉链表结点结构如下:
typedef struct btnode
{ Data Type data;
struct btnode *lchild, *rchild;
} * BinTree;
求二叉树的结点个数的算法如下:
int node_num(BinTree bt)
{
if (bt==NULL) return0;
else
return node_num(bt->lchild)+node_num(bt->rchild)+1;
}

Top