数据结构实验报告(四)
一、实验名称
实验四 树和二叉树的实验1
二、实验目的
1、熟练理解树和二叉树的相关概念,掌握的存储结构和相关操作实现;
2、掌握树的顺序结构的实现;
3、学会运用树的知识解决实际问题
三、实验内容
自己确定一个二叉树(树结点类型、数目和结构自定)利用顺序结构方法存储。实现树的构造,并完成:
1) 层序输出结点数据;
2) 以合理的格式,输出各个结点和双亲、孩子结点信息;
3) 输出所有的叶子结点信息;
4)分析你的算法对于给定的二叉树的存储效率。
四、详细设计(C++)
1. 算法设计
1.定义了BiTree类,最大长度为100的数组空间,利用数组来顺序存储二叉树的特点。
2.定义了构造函数、析构函数、Print层序输出结点数据、PLM输出各个结点和双亲、孩子结点信息、LM输出所有的叶子结点信息。
层序输出操作:
1.将数组中的所有元素按顺序输出。
输出各个结点和双亲、孩子结点信息操作:
1.设结点i的左孩子序号为2*i,右孩子为2*i+1,双亲结点序号为i/2;
2.判断该结点数据是否为’\0’,若为空,则输出无;