先序次序创建二叉树
status CreateBiTree(BiTree &T)
{
char a;
scanf("%c",&a);
if(a=='#')
T=null;
else
{
T=(BiTNode)malloc(sizeof(BiNode));
if(!T)
exit(0);
T->data=a;
CreateBiTree(T->lchild);
CreateBiTree(T->rchild);
}
}
销毁二叉树
status DestroyTree(BiTree &T)
{
if(T->data==null)
exit(0);
free(T);
T=null;
}
清除二叉树,使之变成一棵空树
status ClearBiTree(BiTree &T)
{
if(T!=null)
{
ClearBiTree(T->lchild);
ClearBiTree(T->rchild);
free(T);
T=null;
}
}
求二叉树的高度(深度)(递归)
int DepthBiTree(BiTree &T)
{
if(t==null)
return 0;
else if(T->lchild==null&&T->rchild==null)
return