主题:[讨论]如何求二叉树各结点的所在的层次
typedef struct BT // 定义二叉树结构体
{
char data;
int depth;
BT *lchild;
BT *rchild;
}BT;
void Level(BT *T)
{
if(T)
{
T->depth=depth;
if((T->lchild)||(T->rchild))
{
depth++;
Level(T->lchild);
Level(T->rchild);
}
}
}
有问题,根结点的右子树的层次都是错的。不知道怎么解决?
{
char data;
int depth;
BT *lchild;
BT *rchild;
}BT;
void Level(BT *T)
{
if(T)
{
T->depth=depth;
if((T->lchild)||(T->rchild))
{
depth++;
Level(T->lchild);
Level(T->rchild);
}
}
}
有问题,根结点的右子树的层次都是错的。不知道怎么解决?