按层次遍历二叉树(5)

发布时间:2021-06-08

武汉理工大学课程设计

果应该是”CFEADB”,二叉树是:A为根节点,A左孩子是B,右孩子是C,B的左孩子为空,右孩子为D,C的左孩子为E,右孩子为空,E的左孩子为空,右孩子为F。根据以下程序运行结果(见图2)可知,程序正确运行

4 调试报告

在建立二叉树时,输入的格式一定要正确,没有孩子的要用空格表示,在测试用例中,F没有孩子,要用两个空格表示,如果输入“AB#D##CE#F”则没有输出结果。

5 经验和体会

本程序的建立和遍历二叉树的程序都比较简单,关键在于按要求打印二叉树。起初一直找不到合适的方法按题目要求打印二叉树,在和同学讨论了很久之后终于有了思路。打印的格式中,最上层的节点是右子树层次最高的,于是就可以用递归调用的方式实现。递归次数最高的就是输出最顶置的节点。在调试程序的时候也出现了问题,起初没有在意输入方式对程序运行结果的影响,导致程序无法运行,在检查了很久之后终于找到了问题的所在,对输入进行了改正,得到了正确的结果

6源程序清单及运行结果

6.1源程序清单

#include <stdio.h> #include <stdlib.h> #define max 100

typedef char ElemType; typedef struct BiTNode{ ElemType data;

struct BiTNode *lchild,*rchild; } BiTNode,*BinTree;

//建立二叉树

void CreateBinTree(BinTree &T){ char ch;

ch=getchar();

if(ch==' ') T=NULL; else{

if(!(T=(BiTNode *)malloc(sizeof(BiTNode)))) printf("%c" "结点建立失败!") ; T->data=ch;

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

//遍历二叉树

按层次遍历二叉树(5).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219