森林节点的统计
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
typedef struct bintree
{
char data;
struct bintree *lc,*bro;
}bintree,*tr;
void creat(tr &T)
{char ch;
cin>>ch;
if(ch=='@')
T=NULL;
else
{
T=new bintree;
T->data=ch;
creat(T->lc);
creat(T->bro);
}
}
int leaf(tr T)//只需要判断每个节点的左孩子是否为空即可
{if(T==NULL)
return 0;
if(T->lc==NULL)
return leaf(T->bro)+1;
else
return leaf(T->lc)+leaf(T->bro);
}
int main()
{tr T;
int l;
T=NULL;
creat(T);
l=leaf(T);
cout<<l;
return 0;
}