数据结构-从概念到C++实现(第4版)课件 4-6森林_第1页
数据结构-从概念到C++实现(第4版)课件 4-6森林_第2页
数据结构-从概念到C++实现(第4版)课件 4-6森林_第3页
数据结构-从概念到C++实现(第4版)课件 4-6森林_第4页
数据结构-从概念到C++实现(第4版)课件 4-6森林_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4-6森林v第四章树和二叉树森林的逻辑结构树、森林与二叉树的转换学什么?4-6-1森林的逻辑结构v第四章树和二叉树CBGFEDHIEHIA对于树:删去根结点就变成了森林对于森林:增加一个根结点,将森林中的每一棵树作为这个根结点的子树,则森林就变成了一棵树森林的定义森林:m(m≥0)棵互不相交的树的集合森林的遍历ABCEFDGJIH第3棵是度为2的树还是二叉树?森林的遍历:按照某种次序依次遍历构成森林的m(m≥0)棵树先序(根)、后序(根)先序:ABCDEFGHIJ后序:BADEFCHJIG4-6-2树、森林与二叉树的转换v第四章树和二叉树树与二叉树的对应关系A∧BC∧E∧D∧F∧∧G∧∧CBFEDGAACBEGDF

A

B

D

E

F

G∧∧∧∧∧∧

C∧Page02逻辑关系有什么变化?

树:兄弟关系二叉树:双亲和右孩子

树:双亲和长子二叉树:双亲和左孩子CBFEDGAACBEGDF树与二叉树的对应关系树转换为二叉树CBFEDGA将一棵树转换为二叉树的方法是:(1)加线——树中所有相邻兄弟之间加一条连线(2)去线——对树中的每个结点,只保留它与第一个孩子结点之间的连线,删去它与其它孩子结点之间的连线。(3)层次调整——以根结点为轴心,将树顺时针转动一定的角度,使之层次分明。ACBEGDF树的先序遍历等价于二叉树的先序遍历!树的后序遍历等价于二叉树的中序遍历!树转换为二叉树CBFEDGAACBEGDF二叉树根结点的右子树为空树的根结点没有兄弟树的先序和后序遍历序列?二叉树的先序和中序遍历序列?森林转换为二叉树(1)将森林中的每棵树转换为二叉树(2)将每棵树的根结点视为兄弟,在所有根结点之间加上连线(3)按照二叉树结点之间的关系进行层次调整将一个森林转换为二叉树的方法是ABCEFDGJIHABCEFDGJIHABCDEFGJIHABCDEFGJIH森林转换为二叉树二叉树转换为树(森林)将一棵二叉树还原为树或森林,具体转换方法是(1)加线——若某结点x

是其双亲y

的左孩子,则把结点x

的右孩子、右孩子的右孩子、……,与结点y

连线(2)去线——删去所有双亲结点与右孩子结点的连线(3)层次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论