首页 > 代码库 > 按层次遍历二叉树

按层次遍历二叉树

void traverse(bitree bt)
{
 linkqueue q;
 bitree p;
 initqueue(q);     //初始化一个空的队列
 p=bt;
 enqueue(q,p);      //入队
 while(queueempty(q)!=1)
 {
  dequeue(q,p);     //出队
   if(p->lchild!=NULL)
   enqueue(q,p->lchild);            //访问左子树
  if(p->rchild!=NULL)
   enqueue(q,p->rchild);             //访问右子树
 }
 printf("\n");
}

按层次遍历二叉树