武汉理工大学课程设计
数据结构课程设计 一按层次遍历二叉树
1 问题描述及要求
1.1问题描述
编写按层次顺序(同一层自左至右)遍历二叉树的算法。
1.2任务要求
编写按层次顺序(同一层自左至右)遍历二叉树的算法。 (1)二叉树采用二叉链表作为存储结构。
(2)按题集p44面题6.69所指定的格式输出建立的二叉树。 (3)输出层次遍历结果。 (4)测试用例自己设计。
2 开发平台及所使用软件
Windows 7.0 , Visual C++6.0
3 程序设计思路
3.1二叉树存储结构设计
typedef char ElemType; //二叉树结点值的类型为字符型 typedef struct BiTNode{ //二叉树的二叉链表存储表示 ElemType date;
struct BiTNode *lchild,*rchild; //左右孩子指针
} BiTNode,*BiTree;
3.2 题目算法设计
3.2.1
建立二叉树
void CreateBinTree(BinTree &T){ //按先序次序输入,构造二叉链表表示的二叉树T char ch;
ch=getchar(); //输入函数。
if(ch==’ ’) T=NULL; //输入空格时为空 else{
if(!(T=(BiTNode *)malloc(sizeof(BiTNode)))) printf("%c" "结点建立失败!") ; T->data=ch;