实验四二叉树的遍历和应用04.docx
- 文档编号:8116739
- 上传时间:2023-01-28
- 格式:DOCX
- 页数:5
- 大小:26.27KB
实验四二叉树的遍历和应用04.docx
《实验四二叉树的遍历和应用04.docx》由会员分享,可在线阅读,更多相关《实验四二叉树的遍历和应用04.docx(5页珍藏版)》请在冰豆网上搜索。
实验四二叉树的遍历和应用04
实验四--二叉树的遍历和应用04
江南大学通信与控制工程学院
标准实验报告
(实验)课程名称:
计算机软件技术基础
实验名称:
二叉树的遍历和应用
班级:
自动化
姓名:
李玉书
学号:
03
指导教师:
卢先领
江南大学通信与控制学院
江南大学
实验报告
学生姓名:
张晓蔚学号:
0704090304
实验地点:
信控机房实验时间:
90分钟
一、实验室名称:
信控学院计算中心
二、实验项目名称:
二叉树的遍历和应用
三、实验学时:
4学时
四、实验原理:
二叉树的遍历和应用
五、实验目的:
1、掌握二叉树的数据类型描述及特点。
2、掌握二叉树的存储结构(二叉链表)的建立算法。
3、掌握二叉链表上二叉树的基本运算的实现。
六、实验内容:
阅读后面的程序,并将其输入到计算机中,通过调试为下面的二叉树建立二叉链表,并用递归实现二叉树的先序、中序、后序三种遍历。
七、实验器材(设备、元器件):
计算机
八、实验步骤:
1、输入示例程序
2、构建按序插入函数实现算法
3、用C语言实现该算法
4、与源程序合并,编译,调试
5、测试,查错,修改
6、生成可执行文件,通过综合测试,完成实验
九、实验数据及结果分析:
测试用例
初始数据:
ABDH,,I,,EJ,,K,,CFL,,,G,,
测试结果
十、实验结论:
该程序可以完成线性表的常规功能,且增加了异常处理,在异常情况下,例如:
表空,删除结点号不合法或出界,删除数值未找到等,这些情况下都能作出处理。
可以通过边界测试。
十一对本实验过程及方法、手段的改进建议:
对书中程序的几点错误做了改正,见源程序。
附:
源程序
#include
typedefstructbitree
{
chardata;
bitree*lchild;
bitree*rchild;
}bitree;
bitree*CreatBiTree()
{
bitree*T;
charch;//结点的data域值
cin>>ch;
if(ch==',')T=NULL;
else{
T=newbitree;
T->data=ch;
T->lchild=CreatBiTree();
T->rchild=CreatBiTree();
}
returnT;
}
//前序遍历
voidpreorder(bitree*root)
{
bitree*p;
p=root;
if(p!
=NULL)
{
cout<
preorder(p->lchild);
preorder(p->rchild);
}
}
//中序遍历
voidinorder(bitree*root)
{
bitree*p;
p=root;
if(p!
=NULL)
{
inorder(p->lchild);
cout<
inorder(p->rchild);
}
}
//后序遍历
voidpostorder(bitree*root)
{
bitree*p;
p=root;
if(p!
=NULL)
{
postorder(p->lchild);
postorder(p->rchild);
cout<
}
}
voidmain()
{
//以下为验证程序
bitree*root;
cout<<"建立一棵根为root"< root=CreatBiTree(); cout<<"\n"; preorder(root); cout<<"\n"; inorder(root); cout<<"\n"; postorder(root); cout< }报告评分: 指导教师签字:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 二叉 遍历 应用 04