_
树和森林应用实验
实验报告
实验目的
(
1)
掌握树和森林的二叉链表表示方法。
(2)
掌握树和二叉树的结构及算法之间的对应关系。
(3)
掌握树的两种遍历算法及其应用。
实验运行环境
Visual C++
实验任务
为使实验程序简洁直观,
下面的部分实验程序中的一些功能实现仍以调用库
函数程序
"trees.h"
中的函数的形式给出,
并假设该库函数中定义了树指针和结点
类型分别为
tree
和
tnode
,以及部分常用运算,例如构建树(森林)
、以某种方
式显示树和森林等。
各运算的名称较为直观,
因而易于理解。
读者可自行设计自
己的库函数,也可到作者的网站下载。
说明
2
:为便于数据的描述,和前面的实验一样,将测试数据结构列出,并
以一个文件名的形式给出标注,例如测试数据名为
tree1.tre
的树,其具体结构
形式参见附录中的树列表中的标有
tree1.tre
的树。
实验内容
第一题:
<1>
将一棵树(或森林)转换为二叉树。
实验测试数据基本要求:
第一组数据:
tree1.tre
第二组数据:
tree2.tre
实验准备:
用广义表来表示树的数据,
保存到文件中,
通过文件流来读入数据,
并根据
读入的数据来创建树
第二题:
<2>
求森林的高度。
实验测试数据基本要求: