二叉树及其应用实验报告

二叉树及其应用实验报告

ID:29763010

大小:18.96 KB

页数:13页

时间:2018-12-23

二叉树及其应用实验报告_第1页
二叉树及其应用实验报告_第2页
二叉树及其应用实验报告_第3页
二叉树及其应用实验报告_第4页
二叉树及其应用实验报告_第5页
资源描述:

《二叉树及其应用实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划二叉树及其应用实验报告  题目:  班级:  姓名:  学号:得分:二叉树的应用举例信息一班冯琴琴  1XX  实验三二叉树的应用举例  一、实验目的  要求学生必须掌握二叉树的建立及先序、中序、后序三种遍历方式,在此基础上实现树的一些简单应用问题  二、实验内容及步骤  1.二叉链表的建立,先序遍历  输入:字符串序列  输出:先序序列  处理方法:通过补虚结点,使二叉树中各实际结点均具有左右孩子,再对该二叉树按先序遍历进行输入。以字符串的形式:根、左子树

2、、右子树定义一棵二叉树:  1)空树以空白字符‘#’表示  2)只含一个根结点的二叉树以字符串‘A##’表示  3)一般的二叉树,以图2为例,以下列字符串表示:AB#C##D##目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  4)无论先序、中序、后序遍历二叉树,遍历时的搜索路线是相同的:从根节点出发,逆时针沿二叉树外  缘移动,对每个节点均途经三次。  先序遍历:第一次经过节点

3、时访问。中序遍历:第二次经过节点时访问。后序遍历:第三次经过节点时访问  图1  图2  2.统计二叉树中叶子结点的个数,计算二叉树的深度。  输入:字符串序列  输出:叶子结点的个数,二叉树的深度  处理方法:  1)先序遍历二叉树。在遍历过程中查找叶子结点,并计数。由此,需在遍历算法中增添一个“计数”的  参数,并将算法中“访问结点”的操作改为:若是叶子,则计数器增1。  2)后序遍历二叉树。从二叉树深度的定义可知,二叉树的深度应为其左、右子树深度的最大值加1。由  此,先分别求得左、右子树的深度,算法中“访问结点”的操作为:求得左、右子树深度的最大值,然后加1。

4、  程序:  #include  #include目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  #defineTRUE1  #defineFALSE0  #defineOK1  #defineERROR0  #defineOVERFLOW-1  typedefcharTElemType;  typedefintStatus;  constintMAX_TREE_SIZE=10

5、0;  constintTREEINCREMENT=10;  typedefstructBiTNode{//结点结构  TElemTypedata;  BiTNode*lchild,*rchild;  //左右孩子指针  }BiTNode,*BiTree;  StatusInitBiTree(BiTree&T)  {if(!(T=newBiTNode))returnERROR;  T->lchild=NULL;T->rchild=NULL;  returnOK;  }//InitBiTree  voidCreateBiTree(BiTree&T)  {TElemTyp

6、ee;  }目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  cin>>e;T->data=e;if(e!='#'){InitBiTree(T->lchild);InitBiTree(T->rchild);CreateBiTree(T->lchild);CreateBiTree(T->rchild);}  voidvisit(TElemTypee)  {  }  voidPreO

7、rderTraverse(BiTreeT,void(*call)(TElemTypee))//先序遍历这里的函数指针调用输出函数call--调用  {if(T->data!='#'){  }  voidInOrderTraverse(BiTreeT,void(*call)(TElemTypee))//中序遍历  {if(T->data!='#'){  }  voidPostOrderTraverse(BiTreeT,void(*call)(TElemTypee))//后序遍历  {if(T->data!='#'){  }目的-通过该培训员工可对保安行

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。