手机版

按层次遍历二叉树(4)

发布时间:2021-06-08   来源:未知    
字号:

武汉理工大学课程设计

CreateBinTree(T->lchild); CreateBinTree(T->rchild); } }

3.2.2 遍历二叉树

void LevleOrder(BinTree T){ //从第一层开始,从左到右

BinTree Queue[max],p; //用一维数组表示队列,front和rear分别表示队首和队尾指针 int front,rear; front=rear=0;

if (T) //若树非空 {

Queue[rear++]=T; //根结点入队列

while (front!=rear){ // 队列非空 p=Queue[front++]; // 队首元素出队列,并访问这个结点 printf("%c",p->data);

if (p->lchild!=NULL) Queue[rear++]=p->lchild; //左子树非空,入队列 if (p->rchild!=NULL) Queue[rear++]=p->rchild; } }

}

3.2.3 按要求格式输出已建立的二叉树

void Print_BinTree(BinTree T,int i ) // i表示结点所在层次,初次调用时i=0

{

if(T->rchild) Print_BinTree(T->rchild,i+1); //函数递归 for(j=1;j<=i;j++) printf(" "); //打印i个空格以表示出层次 printf("%c\n",T->data); //打印T元素,换行 if(T->lchild) Print_BiTree(T->lchild,i+1); }

3.3 测试程序

图1:测试二叉树

如图所示二叉树,按先序遍历顺序输入,AB#D##CE#F###。其中”#”代表空格,理论上按层次遍历的结

按层次遍历二叉树(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)