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

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;   
     }
}

猜你喜欢

转载自www.cnblogs.com/yi-mu-xi/p/11061608.html