- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
甘肃政法学院
本科生实验报告
()
姓名:
学院:
专业:
班级:
实验课程名称:
实验日期:
指导教师及职称:
实验成绩:
开课时间: 2013-2014学年 第二学期
甘肃政法学院实验管理中心印制
实验题目第七章、树形结构小组合作否姓名班级学 号一、实验目的7.1实现二叉树的各种基本运算的算法
7.2实现二叉树的各种遍历算法
7.3求二叉树从根节点到叶子节点的路径
7.4由遍历序列构造二叉树
7.5实现中序线索化二叉树
7.6构造哈夫曼树
7.7用二叉树来表示代数表达式二.实验环境安装了Windows7操作系统,并且安装了Microsoft Visual C++ 6.0。三、实验内容与步骤
7.1实现二叉树的各种基本运算的算法
【编写一个程序exp7-1.cpp,实现二叉树的各种基本运算的算法。
输出二叉树b
输出H节点的左右孩子节点值
输出二叉树b的深度
输出二叉树b的宽度
输出二叉树b的节点个数
输出二叉树b的叶子节点个数
释放二叉树b
eq \o\ac(○,1)输入程序如下:
#include stdafx.h
//文件名:exp7-1.cpp
#include stdio.h
#includealgo7-1.cpp
typedef char ElemType;
//typedef struct node
//{
// ElemType data; //数据元素
// struct node *lchild; //指向左孩子
// struct node *rchild; //指向右孩子
//} BTNode;
//extern void CreateBTNode(BTNode *b,char *str);
//extern BTNode *FindNode(BTNode *b,ElemType x);
//extern BTNode *LchildNode(BTNode *p);
//extern BTNode *RchildNode(BTNode *p);
//extern int BTNodeDepth(BTNode *b);
//extern void DispBTNode(BTNode *b);
//extern int BTWidth(BTNode *b);
//extern int Nodes(BTNode *b);
//extern int LeafNodes(BTNode *b);
//extern void DestroyBTNode(BTNode *b);
void main()
{ BTNode *b,*p,*lp,*rp;;
CreateBTNode(b,A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I))));
printf(二叉树的基本运算如下:\n);
printf( (1)输出二叉树:);DispBTNode(b);printf(\n);
printf( (2)H节点:);
p=FindNode(b,H);
if (p!=NULL)
{ lp=LchildNode(p);
if (lp!=NULL)
printf(左孩子为%c ,lp-data);
else
printf(无左孩子 );
rp=RchildNode(p);
if (rp!=NULL)
printf(右孩子为%c,rp-data);
else
printf(无右孩子 );
}
printf(\n);
printf( (3)二叉树b的深度:%d\n,BTNodeDepth(b));
printf( (4)二叉树b的宽度:%d\n,BTWidth(b));
printf( (5)二叉树b的节点个数:%d\n,Nodes(b));
printf( (6)二叉树b的叶子节点个数:%d\n,LeafNodes(b));
printf( (7)释放二叉树b\n);
DestroyBTNode(b);
}
eq \o\ac(○,2)输入程序并运行,如图
7.2实现二叉树的各种遍历算法
编写一个程序exp7-2.cpp,实现二叉树的各种遍历算法。
eq \o\ac(○,1)输入程序如下:
#include stdafx.h
//文件名:exp7-2.cpp
#include stdio.h
#include algo7-1.cpp
#include malloc.h
#define MaxSize 100
typedef char ElemType;
void PreOrder(BTNode *b) //先序遍历的递归算法
{
if
您可能关注的文档
最近下载
- DB32T 4659.3-2024 医院公共卫生工作规范 第3部分:传染病防治.docx VIP
- CAMDS中文使用手册.pptx VIP
- 铁工电202185号国铁集团关于加强涉铁工程管理的指导意见.pdf
- 新生儿早期基本保健课件.pptx VIP
- 宝石F钻井泥浆泵说明书及图.doc VIP
- 2025宫颈环扎术的护理.pptx VIP
- 人教版信息科技三年级《图片记录瞬间》教学PPT课件.pptx VIP
- EMERSON艾默生 Manual Mounting a DVC6020 DVC6020 Digital Valve Controllers on Fisher Type 585 and 585R Size 100 Actuators, 2 to 3 Inch Travel说明书用户手册.pdf
- AQ 3058-2023 内浮顶储罐检修安全规范.docx VIP
- eHR系统测试打分表.docx VIP
文档评论(0)