您的位置:首页 > 其它

162-15

2016-09-13 18:11 134 查看
#include <iostream>
#include <stdlib.h>
using namespace std;
int leaf=0,node=0;
typedef struct bitnode
{
char data;
struct bitnode* lchild;
struct bitnode* rchild;
}bitnode,*bitree;
void create(bitree &bt)
{
char data;
cin>>data;
if(data=='#')
bt=NULL;
else
{
bt=(bitree)malloc(sizeof(bitnode));
bt->data=data;
create(bt->lchild);
create(bt->rchild);
}
}
void successive(bitree bt)
{
if(bt!=NULL)
{
if(bt->lchild==NULL && bt->rchild==NULL)
{
leaf++;
node++;
}
else
{
node++;
}
successive(bt->lchild);
successive(bt->rchild);
}
}
int main()
{
bitree bt;
create(bt);
successive(bt);
cout<<leaf<<endl<<node;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: