山东理工大学:《数据结构》课程教学课件(数学)CH6 树和二叉树

第膏附我户天尉 70
70

6.1树的类型定义和基本术语 6.2二叉树的类型定义及性质 6.3二叉树的存储结构 6.4二叉树的通历 6.5线索二叉树 6.6树和森林 6.7哈夫曼树与哈夫曼编码
6.1 树的类型定义和基本术语 6.2 二叉树的类型定义及性质 6.3 二叉树的存储结构 6.4 二叉树的遍历 6.5 线索二叉树 6.6 树和森林 6.7 哈夫曼树与哈夫曼编码

6.1 树的类型定义和基本术语
6.1 树的类型定义和基本术语

树是一类重要的非线性数据结构,是以分支关系定义 的层次结构。 。树的定义 ·定义:树(Tree)是n(n≥0)个结点的有限集T,其中: 当n≥1时,有且仅有一个特定的结点,称为树的根(Root), 当>1时,其余结点可分为m(m>0)个互不相交的有限集 T,T2,.Tm,其中每一个集合本身又是一棵树,称为根的 子树(SubTree)。 ·特点: -树中各子树是互不相交的集合
• 定义:树(Tree)是n(n≥0)个结点的有限集T,其中: –当n≥1时,有且仅有一个特定的结点,称为树的根(Root), –当n 1时,其余结点可分为m(m>0)个 的有限集 T1,T2,.Tm,其中每一个集合本身又是一棵树,称为根的 子树(SubTree)。 • 特点: –树中各子树是互不相交的集合。

只有根结点的树 有子树的树 根 子树
A A B C D E F G H I J K L M

ADT Tree 数据对象D: D是具有相同特性的数据元素的集合。 数据关系R: 若D为空集,则称为空树; 否则: (①在D中存在唯一的称为根的数据元素root, (2)当n>1时,其余结点可分为m(m>0)个互 不相交的有限集T,T2,Tm,其中每一 个子集本身又是一棵树,称为根root的子树。 基本操作P: ADT Tree
数据对象 D: D是具有相同特性的数据元素的集合。 (1) 在D中存在唯一的称为根的数据元素root, (2) 当n>1时,其余结点可分为m (m>0)个互 不相交的有限集T1 , T2 , ., Tm, 其中每一 个子集本身又是一棵树,称为根root的子树。 数据关系 R: 若D为空集,则称为空树; 否则: 基本操作 P:

基本操作: +查找类 +插入类 +删除类 酸
基本操作: 查 找 类 插 入 类 删 除 类

查找类: Root(T)∥求树的根结点 Value(T,cure)/∥求当前结点的元素值 Parent(T,cure)∥求当前结点的双亲结点 LeftChild(T,cure)∥求当前结点的最左孩子 RightSibling(T,cur_e)∥求当前结点的右兄弟 TreeEmpty(T)l∥判定树是否为空树 TreeDepth(T)∥求树的深度一树中结点的最大层次 TraverseTree(T,Visit0)∥遍历
Root(T) // 求树的根结点 查找类: Value(T, cur_e) // 求当前结点的元素值 Parent(T, cur_e) // 求当前结点的双亲结点 LeftChild(T, cur_e) // 求当前结点的最左孩子 RightSibling(T, cur_e) // 求当前结点的右兄弟 TreeEmpty(T) // 判定树是否为空树 TreeDepth(T) // 求树的深度 TraverseTree( T, Visit() ) // 遍历 树中结点的最大层次

插入类: InitTree(&T)∥初始化构造空树 CreateTree(&T,definition) /按定义构造树 Assign(T,cur_e,value) ∥给当前结点赋值 InsertChild(&T,&p,i,c) ∥将以c为根的树插入为结点p的第棵子树
InitTree(&T) // 初始化构造空树 插入类: CreateTree(&T, definition) // 按定义构造树 Assign(T, cur_e, value) // 给当前结点赋值 InsertChild(&T, &p, i, c) // 将以c为根的树插入为结点p的第i棵子树

删除类: ClearTree(&T)/将树清空 DestroyTree(&T)∥销毁树结构 DeleteChild(&T,&p,i) ∥删除T中结点p的第棵子树
ClearTree(&T) // 将树清空 删除类: DestroyTree(&T) // 销毁树结构 DeleteChild(&T, &p, i) // 删除T中结点p的第i棵子树
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 山东理工大学:《数据结构》课程教学课件(数学)CH7 图.pdf
- 山东理工大学:《数据结构》课程教学课件(数学)CH9 查找表.pdf
- 山东理工大学:《数据结构》课程教学课件(数学)CH10 排序.pdf
- 清华大学:《土木工程CAD技术基础》课程教学课件(讲稿)工程计算机制图——工程制图基础.pdf
- 清华大学:《土木工程CAD技术基础》课程教学课件(讲稿)计算机图形技术.pdf
- 清华大学:《土木工程CAD技术基础》课程教学课件(讲稿)AutoCAD图形系统的应用和开发.pdf
- 清华大学:《土木工程CAD技术基础》课程教学课件(讲稿)工程计算机制图——建筑施工图.pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第9单元 文件.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)位运算.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第8单元 结构体与共用体.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)编译预处理.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第7单元 指针.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第6单元 函数.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第5单元 数组.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第4单元 循环结构程序设计.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第3单元 选择结构程序设计.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第2单元 顺序结构程序设计.pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学课件(PPT讲稿)第1单元 概述(主讲:耿蕊).pptx
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(电子信息工程).pdf
- 齐齐哈尔大学:《C语言程序设计》课程教学大纲 The C Programming Language(电气工程及其自动化).pdf
- 山东理工大学:《数据结构》课程教学课件(数学)CH5 数组和广义表.ppt
- 山东理工大学:《数据结构》课程教学课件(数学)CH4 串.ppt
- 山东理工大学:《数据结构》课程教学课件(数学)CH3 栈和队列.pdf
- 山东理工大学:《数据结构》课程教学课件(数学)CH2 线性表.ppt
- 山东理工大学:《数据结构》课程教学课件(数学)CH1 绪论(主讲:殷超).ppt
- 《计算机应用基础》课程教学资源(PPT课件讲稿)第一章 计算机组成概述.ppt
- 《计算机应用基础》课程教学资源(PPT课件讲稿)HTML网页设计基础.ppt
- 《计算机应用基础》课程教学资源(PPT课件讲稿)PHP网页程序设计.ppt
- 《计算机应用基础》课程教学资源(PPT课件讲稿)第二章 Linux操作系统.ppt
- 山东理工大学:《数据结构》课程教学资源(数据结构自编习题集).doc
- 《数据结构》课程教学资源(参考资料)数据结构实验指导书.doc
- 《数据结构》课程教学资源(参考资料)线索二叉树提高.ppt
- 《数据结构》课程教学资源(参考资料)数据结构学习方法.doc
- 清华大学出版社:《数据结构基础》课程教材书籍PDF电子书(C语言版,第2版,Ellis Horowitz Sartaj Sahni 著,Susan Anderson-Freed 朱仲涛 译).pdf
- 内蒙古科技大学:《JSP编程》课程教学大纲 JSP programming.doc
- 内蒙古科技大学:《Java编程》课程教学大纲 Java Programming.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(授课教案)第七章 MVC模式.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(授课教案)第六章 Servlet技术.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(授课教案)第四章 JavaBean.doc
- 内蒙古科技大学:《JSP编程》课程教学资源(授课教案)第二章 JSP语法.doc