[转]给定某节点在二叉树中的层次

 

typedef char TElemType;
/* 二叉樹的二叉鏈表存儲表示 */
typedef struct BiTNode
{
    TElemType data;
    struct BiTNode *lchild,*rchild; /* 左右孩子指針 */
} BiTNode, *BiTree;
 
int level(BiTree T, BiTNode *N)
{
    int i, j;
    if(T == NULL)
    {
        return 0;   
    }
    if(T == N)
    {
        return 1;   
    }
    i = level(T->lchild, N);
    j = level(T->rchild, N);
    if(i != 0)
    {
        return (i + 1);   
    }
    else if(j != 0)
    {
        return (j +  1);   
    }
    else
    {
        return 0;   
    }
}
posted @ 2019-06-20 21:48  yimuxi  阅读(537)  评论(0编辑  收藏  举报