层次遍历:按箭头所指方向,按1,2,3,4的层次顺序,对二叉树中各个节点进行访问
要进行层次遍历,需要借助一个队列。描述算法如下
Void LevelOrder(BiTree T){
InitQueue(Q);//初始化辅助队列
BiTree p;
While(!IsEmpty(Q)){ //队列不空
DeQueue(Q,p); //出队
Visit§; //访问当前p所指向节点
If(p->lchild!=NULL) EnQueue(Q,p->lchild); //左子树不空,则左子树入队列
If(p->rchild!=NULL) EnQueue(Q,p->rchild); //右子树不空,则右子树入队列
}
}