题目为:
假设以二叉链表表示二叉树,类型定义如下:
typedef struct node {
int data;
struct node *lchild, *rchild //左右孩子指针
} +BinTree;
简述算法f的功能
int f(BinTree T)
{
int d;
if(!T) return 0;
d=f(T->lchild)+f(T->rchild);
if(T->lchild&&T->rchild) return d+1;
else return d;
}
PS: 初学,知道的朋友帮说下,有啥技巧详细说下,满意一定追加。