题目描述:编程求以孩子兄弟表示法存储的森林的叶结点数。
分析: 孩子兄弟表示法中有三部分组成:结点值、第一个孩子结点、相邻兄弟结点。
1、若为空,返回 0
2、若第一个孩子为空,则1 + 递归其兄弟结点
3、否则,递归其第一个孩子结点和其兄弟结点
int Leaves(Forest T){
if(T == NULL)
return 0;
if(T->firstchild == NULL)
return 1 + Leaves(T->nextsbling);
else
return Leaves(T->firstchild) + Leaves(T->nextsbling)
}