- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
遍历二叉树--青少年教育精选.ppt
遍历二叉树 授课:陈嘉庆 二叉树的运算 1、二叉树的遍历 2、二叉树的输出 3、求二叉树的深度 * 遍历二叉树 Traversing Binary Tree 遍历定义—— 遍历用途—— 遍历方法—— 指按某条搜索路线遍访每个结点且不重复(又称周游)。 它是树结构插入、删除、修改、查找和排序运算的前提,是二叉树一切运算的基础和核心。 对每个结点的查看通常都是“先左后右” 。 * 遍历规则——— 二叉树由根、左子树、右子树构成,定义为D、L、R 以根结点为参照系 注:“先、中、后”的意思是指访问的结点D是先于子树出现还是后于子树出现。 D、 L、R的组合定义了六种可能的遍历方案: LDR, LRD, DLR, DRL, RDL, RLD 若限定先左后右,则有三种实现方案: DLR LDR LRD 先序/根遍历 中序/根遍历 后序/根遍历 * 例1: 先序遍历的结果是: 中序遍历的结果是: 后序遍历的结果是: A B C D E D B E A C D E B C A 口诀: DLR—先序遍历,即先根再左再右 LDR—中序遍历,即先左再根再右 LRD—后序遍历,即先左再右再根 A B D E C * 对遍历的分析: 1. 从前面的三种遍历算法可以知道:如果将print语句抹去,从递归的角度看,这三种算法是完全相同的,或者说这三种遍历算法的访问路径是相同的,只是访问结点的时机不同。 从虚线的出发点到终点的路径 上,每个结点经过3次。 A F E D C B G 第1次经过时访问,是先序遍历 第2次经过时访问,是中序遍历 第3次经过时访问,是后序遍历 2. 二叉树遍历的时间效率和空间效率 时间效率:O(n) //每个结点只访问一次 空间效率:O(n) //栈占用的最大辅助空间 精确值:树深为k的递归遍历需要k+1个辅助单元 * 特别讨论:若已知先序(或后序)遍历结果和中序遍历结果,能否“恢复”出二叉树? 例:已知一棵二叉树的中序序列和后序序列分别是BDCEAFHG 和 DECBHGFA,请画出这棵二叉树。 分析: ①由后序遍历特征,根结点必在后序序列尾部(即A); ②由中序遍历特征,根结点必在其中间,而且其左部必全部是左子树的子孙(即BDCE),其右部必全部是右子树的子孙(即FHG); ③继而,根据后序中的DECB子树可确定B为A的左孩子,根据HGF子串可确定F为A的右孩子;以此类推。 * 已知中序遍历:B D C E A F H G 已知后序遍历:D E C B H G F A (B D C E) ( F H G) A (D C E) B F G H C D E A B B A C C D C E 二叉树的遍历 遍历——按一定规律走遍树的各个顶点,且使每一顶点被且仅被访问一次,即找一个完整而有规律的走法,以得到树中所有结点的一个线性排列 常用方法 NLR:前序遍历,访问结点的操作发生在遍历其左右子树之前 LNR:中序遍历,访问结点的操作发生在遍历其左右子树之中(间) LRN:后序遍历,访问结点的操作发生在遍历其左右子树之后 A D B C N L R A N L R N L R B D C N L R 先序遍历序列:A B D C 先序遍历: A D B C L N R B L N R L N R A D C L N R 中序遍历序列:B D A C 中序遍历: A D B C L R N L R N L R N A D C L R N 后序遍历序列: D B C A 后序遍历: B - + / a * b - e f c d 先序遍历: 中序遍历: 后序遍历: - + a * b - c d / e f - + a * b - c d / e f - + a * b - c d / e f 遍历——练习 遍历——练习 有二叉树的中序遍历为ABCEFGHD,后序遍历序列为:ABFHGEDC。请画出此二叉树,并求前序序列。 例:用顺序存储方式建立一棵如图所示的二叉树,并对其进行先序遍历。 1 2 3 4 6 5 a b c d f e 先序遍历算法 procedure search(m:
您可能关注的文档
最近下载
- 小学生心理健康教育主题班会教案.docx VIP
- 糖尿病入院记录模板.docx VIP
- soap病历中医的书写课件.ppt VIP
- V90伺服驱动器与S7-1200通过FB284进行PROFINET通信的具体方法和步骤(非常详细).docx VIP
- 体育教学论:体育教学过程PPT教学课件.pptx VIP
- DB61_T 1741-2023 矿山生态监测规范.doc VIP
- 2025年广东省湛江市中考物理试题(含答案解析).pdf VIP
- 数字技术赋能基层社会治理研究.docx VIP
- 高考语文一轮复习-- 辨析修改语序不当、搭配不当病句——抓住病症,找出病因.doc VIP
- 北京市中国人民大学附属中学2025届高三年级10月质量检测练习化学试卷+答案.pdf VIP
文档评论(0)