C Language 二叉树 - 二叉树的遍历(十五)
Posted Adorable_Rocy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C Language 二叉树 - 二叉树的遍历(十五)相关的知识,希望对你有一定的参考价值。
层次遍历也是二叉树中的一种遍历方式,说明是从上至下从左至右的遍历方式进行对二叉树的遍历,下面来介绍一下二叉树的层次遍历算法。
二叉树如下:
原理如下:
- 代码实现起来也就按照原理来书写就变得十分简单啦:
//环形队列算法遍历
void levelOrder(BTNode *bnode){
BTNode *b;
SqQueue *qu;
initQueue(qu);
enQueue(qu,bnode); //A 进队
b = bnode;
printf("\\n");
while(!QueueEmpty(qu)){
deQueue(qu,b); //A
printf("%3c",b->data); //A
if(b->lchild != NULL){
enQueue(qu,b->lchild);
}
if(b->rchild != NULL){
enQueue(qu,b->rchild);
}
}
}
- 结果如下:
以上是关于C Language 二叉树 - 二叉树的遍历(十五)的主要内容,如果未能解决你的问题,请参考以下文章