- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2016新编根据两种遍历顺序确定树结构.doc
第六节 根据两种遍历顺序确定树结构
一、由两种顺序确定树结构???? 遍历二叉树有三种规则:??? 前序遍历:根—左子树—右子树;??? 中序遍历:左子树—根—右子树;???? 后序遍历:左子树—右子树—根;???? 由于前序遍历的第一个字符和后序遍历的最后一个字符为根,中序遍历中位于根左方的子串和位于根右方的子串分别反映了左子树和右子树的结构,因此二叉树的形态可以由其中序与后序或者前序与中序唯一确定。但无法反映左子树和右子树结构的前序遍历与后序遍历却不能做到这一点,因此这两个遍历顺序可对应多种二叉树的形态。
二、由中序遍历与后序遍历确定前序遍历??? 由二叉树的遍历规则可以看出,后序遍历的最后一个字 符为根,中序遍历中位于该字符左侧的子串为左子树中序遍历的结果;中序遍历中位于该字符右侧的子串为右子树中序遍历的结果。??? 设 中序遍历s1=s1…sk?…sn?????? 后序遍历s2=s1……sn??? 显然,后序遍历中的sn为二叉树的根。按照前序遍历的规则输出sn。在中序遍历中与sn相同的字符为sk。若k1,说明左子树存在,位于sk左侧的子串s1…sk-1为左子树中序遍历的结果,后序遍历中的前缀s1…sk-1为左子树后序遍历的结果;若kn,说明右子树存在,位于sk右侧的子串为右子树中序遍历的结果;后序遍历中的sk…sn-1为右子树后序遍历的结果。按照按照前序遍历的规则分别递归二叉树的左子树和右子树。?
procedure solve1(s1,s2:string);?{ 计算和输出中序遍历s1和后序遍历s2对应的前序遍历}var? k:integer;begin? if length(s2)=1???{若当前子树仅剩一个节点,则输出}???? then write(s2)???? else begin?????????? k:=pos(s2[length(s2)],s1);{在中序遍历中寻找子树根}?????????? write(s1[k]);?????????? if k1????????????{若左子树存在,则递归遍历左子树}????????????? then solve1(copy(s1,1,k-1),copy(s2,1,k-1));?????????? if klength(s1)???{ 若右子树存在,则递归遍历右子树}????????????? then solve1(copy(s1,k+1,length(s1)-k),copy(s2,k,length(s2)-k));????????? end;end; 三、由中序遍历与前序遍历确定后序遍历??? 原理同前,程序略微有些不同,看下面:
procedure solve2(s1,s2:string);{计算和输出中序遍历s1和前序遍历s2对应的后序遍历}var?? k:integer;begin?? if length(s2)=1???{若当前子树仅剩一个节点,则输出}????? then write(s2)????? else begin??????????? k:=pos(s2[1],s1);??{在中序遍历中寻找子树根}??????????? if k1????????{若左子树存在,则递归遍历左子树}?????????????? then solve2(copy(s1,1,k-1),copy(s2,2,k-1));??????????? if klength(s1)?{ 若右子树存在,则递归遍历右子树}??????????? then solve2(copy(s1,k+1,length(s1)-k),copy(s2,k+1,length(s2)-k));?????????? end;??? write(s1[k]);{或者输出子树根s2[1]}end; 电力安全月工作总结
[电力安全月工作总结]电力安全月工作总结 2011年3月1日至3月31日为我公司的安全生产月,**变电站围绕;夯实基储提高素质、树立标杆、争创一流;的主题,开展了丰富多彩、形式多样的具体行动:通过看板形式宣传安全第一、预防为主的方针;通过48+4的学习机会,进行安全生产大讨论;通过安全活动进行查找本站的隐患的活动,电力安全月工作总结。形成了;人人学会安全,层层尽责保证安全;的良好氛围,使我站的安全生产工作又上了一个新的台阶。
本站安全生产月活动具体工作如下:
1.开展安全月活动宣传工作,大家坐在一起讨论活动的主题、学习实施纲要、讨论各个实施阶段的活动安排。深刻反思11.3事故,汲取事故教训,每人写了一份11.3事故反思,并对本站的安全管理、记录报表、规章制度、培训工作、事故隐患每个值班员都谈了自
您可能关注的文档
- [定稿]不孕不育项目管理建设的指导意见.doc
- 行业资料2006执业医师基本操作技能考试.doc
- 【最新资料】自制2016日历 美图秀秀让宝宝可爱升级.doc
- 【精品】人民日报,大众日报教育实践活动优秀评论人员文章选编.doc70.doc
- 中国人文社会科学核心期刊要览(2008年版)简介.doc
- 介入放射学的职业防护-公卫助理医师考试辅导.doc
- 2016年尚蓝轩 执业医师助理医师考试题库呼吸系统练习0401【最新精选】.doc
- [策划]人教版九年级化学整册同步测试习题精选300页含谜底(上)22707.doc
- 执业医师考试试题-2013年临床助理医师考试专项练习试题.doc
- 中药综合非处方药汇总(表格版)[资料].doc
- 辽宁省大连市大连育明高级中学2024-2025学年高一(下)期中考试数学试卷(含答案).pdf
- 青海省西宁市海湖中学2024-2025学年高二(下)期中考试数学试卷(含答案).pdf
- 山东省淄博市实验中学、齐盛高级中学2024-2025学年高二(下)期中数学试卷(含答案).pdf
- 山东省烟台市牟平第一中学2024-2025学年高一(下)5月月考数学试卷(含答案).pdf
- 辽宁省普通高中2024-2025学年高一(下)期中考试数学试卷(含答案).pdf
- 陕西省咸阳市武功县普集高级中学2024-2025学年高二(下)5月月考数学试卷(含答案).pdf
- 陕西省咸阳市武功县普集高级中学2024-2025学年高一(下)5月月考数学试卷(含答案).pdf
- 内蒙古赤峰市林西县第一中学2024-2025学年高二(下)期中数学试卷(选必2,选必3)(含答案).pdf
- 四川省德阳市第五中学2024-2025学年高一(下)期中考试数学试卷(含答案).pdf
- 四川省绵阳市某中学2024-2025学年高二(下)第三学月月考数学试卷(含答案).pdf
文档评论(0)