版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、森林儿童兄弟表达的设计和实现,奇异的水道,基本要求,(1)设计森林儿童兄弟储存结构。要求森林的盘根、重根、后根巡回。(2)森林的大小(森林中的树数)、森林的高度(森林的最大高度)、森林中树叶的数量(森林中所有树的叶子的总和)。(3)在森林的儿童兄弟链表示中设计和实现了相应的函数,得出了相应二叉树的高度和叶数。森林的儿童兄弟存储结构,森林的节点类模板定义与树的节点类模板定义相匹配。template struct childsiblingforestnode t data;childsiblingforestnode * first child;childsiblingforestnode * n
2、ext sibling;childsiblingforestnode();childsiblingforestnode (tval,childsiblingforestnode * fchild=null,childsiblingforestnode * n sibling=null否则,请1)访问森林中第一棵树的根节点。2)第一根穿过第一棵树根节点的子树林;3)首先巡回第一棵树以外的其他树组成的森林。右图中显示的森林是a、b、c、d、e、f、g、h、j、i、森林第一根通过的递归算法,第一个是template void childsiblingforest 336033333333333333
3、2)访问森林中第一棵树的根节点。3)中根巡回森林,除了第一棵树外,由其他树组成。右图中所示的森林是在中间根巡回后获得的。b、c、d、a、f、e、j、h、i、g,森林中层根巡回的递归算法void(* visit)(const t t/medium root是由除第一棵树外的其他树组成的2)后根穿过除第一棵树外的其他树组成的森林。3)访问森林中第一棵树的根节点。右图所示的森林是后勤部巡回后d、c、b、f、j、i、h、g、e、a,森林后勤部巡回的递归算法,template void childsiblingforest 336033333333333332)如果队列不为空,请退出队列并访问。3) 2
4、)由已出队节点的子树组成的森林,分1)和2)阶段进行。右图中显示的森林是a、e、g、b、c、d、f、h、i、j,表示存储结构中的树数,只需将计数从第一棵树的根节点移动到右兄弟。这是儿童兄弟代表树林的画。templateintchildsiblingforest 33603360 treenum()constchildsiblingforestnode * cur=root;int num=0;while(cur!=null)num;cur=cur-nextsibling;return num、林的高度(林中树的最大高度)、林的高度,先求出每棵树的高度,然后求出林的高度。template int
5、 childsibling forest 33603360 tree heighthelp(childsiblingforestnode * r)constint _ max=0;查找实现的树高度的递归算法if(r-first child=null)return 1;for(自动i=r-first child;i!=nulli=i-nextsibling)_ max=max(tree heighthelp(i)1,_ max);return _ max,森林高度(林中树的最大高度),template int childsibling forest : height()const childsi
6、blingforestnode * p;int maxheight=0,heightfor(p=root);p!=nullp=p-next sibling)height=tree height help(p);/求树高度的递归函数maxheight=(maxheight height)?height : maxheightreturn maxheight,森林中的树叶数(森林中所有树木的树叶总数),森林中的树叶数也能拯救高度。首先,拯救森林中的每棵树是树叶数,然后具荷拉森林中的树叶数。(莎士比亚,林中的叶数、叶数、叶数、叶数、叶数、叶数、叶数)寻找树叶的递归算法为templateint chi
7、ldsiblingforest 3360: leftnumhelp(childsiblingforest 33603: leftnumhelp)if(!r-first child)return 1;int sum=0;for(自动i=r-first child;i!=nulli=i-next sibling)sum=left numhelp(i);return sum,森林中的树叶数(森林中所有树的树叶总数),森林中的树叶数templateintchildsiblingforest :3: left num()constintsum=0;自动cur=根;while(cur!=null)总计=l
8、eft numhelp(cur);cur=cur-nextsibling;return sum,如果相应二叉树的高度,相应二叉树的高度递归算法思想,相应二叉树的根为空,则返回0。否则,调用二进制树左侧子树的高度递归算法,以获得左侧子树的高度。对与二叉树相对应的右子树调用高度递归算法,以获得左子树高度。比较左侧和右侧子树的高度。实现相应的二叉树高度递归算法,template int childsibling forest 3360: bintree heighthelp(childsiblingforestnode * r)constif(r=,对相应二叉树的叶数,对相应二叉树的叶递归算法的思考,如果相应的二叉树根为空,则返回0。否则,对与二进制树相对应的左侧子树调用叶数递归算法,以查找左侧子叶数。对与二进制树相对应的右子树调用叶树递归算法,以查找左子叶数。添加左侧和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 艺术市场的价值密码-深度解析艺术品价值影响因素
- 2026年工业互联网数据备份方案实施步骤与要点
- 2026银信金服面试题库及答案
- 2026营销算法面试题及答案
- 2026幼儿歌唱面试题及答案
- 2026语言矫正老师招聘面试题及答案
- 2026年山西省永济市高二化学下册期末考试模拟考试卷及完整答案(各地真题)
- 2026年湖南省津市市高二化学下册期末考试模拟测试卷【A卷】附答案
- 2026年山东省安丘市高二化学下册期末考试模拟卷附完整答案(网校专用)
- 2026年山东省莱西市高二化学下册期末考试模拟考试卷含答案【培优】
- Unit7AdaytorememberSectionB1a-1d课件-七年级英语下册(人教版2024)
- 安徽省水利水电工程施工招标文件示范文本(2025年版)
- 中医目诊课件
- 《水电站运行维护课件资料》
- 生猪屠宰兽医卫生检疫人员考试题库答案
- 四川省泸州市2022-2023学年七年级下学期语文期末试卷(含答案)
- 《油画风景写生》课件
- 前程无忧在线测试题库及答案行测
- 土建工程重大危险源的识别和控制措施
- 冀教版六年级语文下册期末试题
- 口腔黏膜上皮肿瘤和瘤样病变(口腔组织病理学课件)
评论
0/150
提交评论