实验报告书课程名:数据结构题目:树形数据结构实验(1)班级:学号:姓名:评语成绩:指导教师:批阅时间:年/第 2 页对象--二叉数***************一、目的与要求1)熟练掌握二叉树的二叉链表表示创建算法与实现;2)熟练掌握栈的前序、中序与后序递归遍历算法与实现;3)熟练掌握前序、中序与后序遍历线索二叉树的基本算法与实现;4)按照实验题目要求独立正确地完成实验内容(提交程序清单及相关实验数据与运行结果);5)认真书写实验报告,并按时提交。二、实验内容或题目1)创建二叉树:广义表式创建与先序创建;2)遍历二叉树:先,中,后,层序遍历,广义表式遍历,凹凸式遍历;3)二叉树属性:深度,宽度,结点数,叶子结点数4)二叉树路径:叶子结点到根结点的路径;5)二叉树线索:中序线索二叉树;6)二叉树置空:清空二叉树。三、实验步骤与源程序1)头文件 Btree.h#include#include#include#include#include****************第 1 页/*****************************二叉数的结点类定义typedefcharElemType;//定义元素类型#defineMAXSIZE100//确定二叉树的最大结点数******************************classBTreeNodeprivate:intltag,rtag;//线索标记BTreeNode*left;//左子树指针BTreeNode*right;//右子树指针public:ElemTypedata;//数据域//构造函数BTreeNode()ltag=0;rtag=0;left=NULL;right=NULL;//带参数初始化的构造函数BTreeNode(ElemTypeitem,intltag1,intrtag1,BTreeNode*left1,BTreeNode*right1)data=item;ltag=ltag1;rtag=rtag1;//递归创建二叉树,被函数 CreateBTreel 调用第 2 页/********************************叉数的类定义/***************************创建叉数的相关成员函数left=left1;right=right1;BTreeNode*&Left()//返回结点的左孩子returnleft;//返回结点的右孩子BTreeNode*&Right()returnright;friendclassBinaryTree;//二叉树类为二叉树结点类的友元类*******************************classBinaryTreeprivate:BTreeNode*root;public://构造函数.初始化二叉树为空BinaryTree(){root=NULL;}//判断二叉树是否为空boolBTreeEmpty(){returnroot==NULL;}***********************//按照二叉树的广义表表示创建二叉树voidCreateBTree1();/*************************** 遍历二叉数的相关成员函数voidCreate1(BTreeNode*&BT);//按一定次序输入二叉树中结点的值(...