您的位置:首页 > 理论基础 > 数据结构算法

数据结构_求二叉树的高度以及层次遍历二叉树算法_C语言源代码

2014-07-20 12:41 344 查看
int Height(BTNode *T)//求二叉树高度

{

    int L,R;

    if(NULL == T)  

       return 0;

    else

    {  

        L=Height(T->lchild);

        R=Height(T->rchild);

        return  L>R ? L+1 :R+1;

    }

       

    

}

const int MAXSIZE=100;

BTNode * Q[MAXSIZE];

int front=0;

int rear=0;

void VisitByLayer(BTNode *T)//层次遍历二叉树

{

     BTNode *s=NULL;

     if(NULL != T)

     {

             Q[rear] = T;

             rear=(rear+1)%MAXSIZE;

             

             while(front != rear)

             {

                     s=Q[front];    

                     front=(front+1)%MAXSIZE;

                     printf("%c\t",s->data);

                     if(NULL != s->lchild)

                     {

                             Q[rear]=s->lchild;

                             rear=(rear+1)%MAXSIZE;

                     }

                     if(NULL != s->rchild)

                     {  

                             Q[rear]=s->rchild;

                             rear=(rear+1)%MAXSIZE;

                     }

             }

     }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息