程序用VC编写,实现建立一棵二叉树的功能,并对其进行遍历(先序、中序、后序),并且打印输出遍历结果。
二叉树的建立与遍历实验报告 级 班 年 月 日 姓名 学号_
1.实验题目
建立一棵二叉树,并对其进行遍历(先序、中序、后序),打印输出遍历结果。
2.需求分析
本程序用VC编写,实现建立一棵二叉树的功能,并对其进行遍历(先序、中序、后序),并且打印输出遍历结果。
① 输入的形式和输入值的范围:
输入二叉树的先序,当其结点为空时,需要输入#。(输入的先序仅含字母和#) ② 输出的形式:输出二叉树的先序、中序、后序。
③ 程序所能达到的功能:实现建立一棵二叉树的功能,并对其进行遍历(先序、中序、 后序),并且打印输出遍历结果。
④ 测试数据:
输入数据:
输入ABC##DE#G##F###
输出结果:
二叉树的先序遍历为:
ABCDEGF
二叉树的中序遍历为:
CBEGDFA
二叉树的后序遍历为:
CGEFDBA
3.概要设计
1) 为了实现上述程序功能,需要定义二叉链表的抽象数据类型:
typedef struct BinaryTreeNode
{
TElemType data;//二叉树结点中的数据域
struct BinaryTreeNode *lchild , *rchild; //二叉树结点的左孩子和右孩子指针
}BinaryTreeNode ,*BiTree;