- 2
- 0
- 约1.38万字
- 约 57页
- 2016-12-26 发布于广东
- 举报
2003年12月1日 软件需求工程 第六章 树 6.1 树的基本概念 6.2 树的存贮表示 6.3 二叉树 6.4 二叉树的遍历 6.5 线索二叉树 6.6 树与二叉树的转换 6.7 赫夫曼树 6.8 小结 6.1 树的基本概念 树T是一个有限的非空数据元素集合, 该集合中的一个特定的数据元素被称为根, 其余的数据元素被划分称为几个不相交的集合T1,T2,...,Tm,其中的每个集合都是一棵树,它们也被称为根结点的子树。 6.1 树的基本概念(续1) 树中包含了6个结点,T={A,B,C,D,E,F}, 结点A是树的根结点, 除A之外的5个结点又分为3个不相交的集合T1、T2、T3,其中T1={B,E,F},T2={C},T3={D}, 它们分别是A的3棵子树, T1、T2、T3本身分别也是一棵树。 6.1 树的基本概念(续2) 树中的每个数据元素被表示成一个结点,结点与它的子树之间由分枝相连,一个结点不仅包括了数据元素的值,还包括了指向它的子树的分枝。 分枝所指向的子树的根,被称为该结点的孩子结点,该结点也就是它的孩子结点的双亲。具有同一个双亲的孩子结点被称为兄弟。 结点的祖先指的是从树的根出发到达此结点所经历的分枝上的所有结点。而结点的子孙指的是以该结点为根的子树中的所有结点。 结点所拥有的分枝的数目被称为该结点的度,树中各结点的度的最大值就被称为树的度。 在树中,度为0的结点称为叶子结点或终端结点。度不为0的结点称为分枝结点或非终端结点。 6.1 树的基本概念(续3) 结点的层次从根开始计算,树中根结点的层次为1,根的孩子结点的层次为2,也就是说结点的层次等于它的双亲结点的层次数加1。树中结点的最大层次称为树的深度或高度。 6.1 树的基本概念(续4) 如果把一棵树中的结点的各个子树看作是从左至右有次序的,则称该树为有序树,否则为无序树。 对于有序树来说,如果交换结点的子树次序就构成不同的树。一般,我们把有序树中的子树进行排序,把有序树中最左边的子树的根称为第一个孩子,最右边的称为最后一个孩子。 互不相交的树的集合就构成了森林。对树中的结点而言,其子树的集合就是森林。 6.1 树的基本概念(续5) 树的基本操作: 1. ? 初始化:构造一棵空树。 2. ? 销毁:销毁一棵已存在的树。 3. ? 求深度:求出一棵已存在的树的深度。 4. ? 求根:取得一棵树的根结点。 6. ? 求双亲:取得树中某个结点的双亲结点。 6. ? 求孩子:取得树中某个结点的特定孩子结点。 7. ? 求右兄弟:取得树中某个结点的右兄弟结点。 8. ? 插入:向树中特定位置插入以某个结点为根的子树。 9. ? 删除:删除树中以某个结点为根的子树。 10. 遍历:按指定的顺序依次访问树中的每个结点一次。 6.2 树的存贮表示 其他表示法 双亲表示法 孩子表示法 孩子兄弟表示法 6.2 树的存贮表示(续1) 其他表示法 6.2.1 双亲表示法 树中的每个结点都只有一个唯一的双亲结点 6.2.2 孩子表示法(续1) 树中的每个数据元素都用一个结点来表示 每个结点有多个指针域 指针域的个数依赖于树中该结点的孩子的个数 6.2.2 孩子表示法(续2) 带degree的表示法 各个结点之间不同构,操作起来比较困难,所以也不常用 6.2.2 孩子表示法(续3) 孩子链表表示法 6.2.2 孩子表示法(续4) 带双亲的孩子链表表示法 6.2.3 孩子兄弟表示法 树的结点除了结点信息外,还包括两个指针域,分别指向该结点的第一个孩子结点和下一个兄弟结点。 因为树中的每个结点中有两个指针域,所以又称为二叉链表表示法。 6.2.3 孩子兄弟表示法(续1) 6.3 二叉树 二叉树的定义 二叉树的性质 二叉树的存贮表示 6.3.1 二叉树树的定义 二叉树是一个数据元素的有限集(可为空)。当二叉树不空时,它有一个特定的根结点,其余的结点被划分成为两棵互不相交的二叉树,即它的左子树和右子树。 二叉树与树的主要区别在于: 树不能为空,至少要有一个结点,而二叉树可以是一棵空树; 二叉树中的每个结点至多有两个孩子,但树中每个结点可以有任意多个孩子; 二叉树是一棵有序树,每个结点的子树都有左右之分,即使某个结点只有一棵子树,也要区分左右,而在树中,子树是无序的。 6.3.1 二叉树的定义(续1) 二叉树可以有五种基本形态: 6.3.1 二叉树的定义(续2) 二叉树的基本操作: 1. ? 初始化:构造一棵空的二叉树。 2. ? 销毁:销毁一棵已存在的二叉树。 3. ? 求深度:求出一棵已存在的二叉树的深度。 4. ? 求根:取得一棵二叉树的根结点。 6. ? 求双亲:取得二叉树中某个结点的双亲结点。 6. ? 求左孩
您可能关注的文档
- 微课教学设计教学课件作者刘万辉教学资源课件_第6章_我的情绪我做主课件.pptx
- 数据结构教学课件作者李学刚电子课件源代码单元5图课件.ppt
- 数据结构教学课件作者李学刚电子课件源代码单元6排序课件.ppt
- 数据结构教学课件作者李学刚电子课件源代码单元7查找课件.ppt
- 数据库技术基础教学课件作者王珊chp1课件.ppt
- 数据库技术基础教学课件作者王珊chp2课件.ppt
- 数据库技术基础教学课件作者王珊chp3课件.ppt
- 2026【人教版】小学六年级数学下册第5课时 解决问题【教案对应版】.pptx
- 主题03 多元共生:世界文明的演进与交融(知识清单)2026年高考历史二轮复习讲练测.pdf
- 2026年春【苏教版】-六年级数学下册-6.pptx
- 统编版2025年春季新版七年级下册历史 第21课 明清时期的科技与文化 教案.docx
- 雅安雨城法院书记员招聘考试真题库2025.docx
- 2026届安徽合肥市高考一模高考语文试卷试题(含答案详解).pdf
- 【专题研究】国内外城市更新研究的最新进展.pdf
- 【专题研究】老旧城区改造居民满意度影响因素研究——以遂宁市老旧城区改造为例.pdf
- 【专题研究】关于旧城空间改造理论与创意设计案例的几点思考.pdf
- 西藏拉萨市高三下学期期末物理备考重点详解.docx
- 泾县法院书记员招聘笔试真题2025.pdf
- 2026年春【苏教版】-六年级数学下册-面积的变化.pptx
- 2026年春【苏教版】-六年级数学下册-7.pptx
原创力文档

文档评论(0)