- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java数据结构与算法解析(四)――树的概述
树的基本概念
树:
树(Tree)是n (n^O)个结点的有限集。n-0时称为空树,在任意一棵非空 树中:(1)有且仅有一个特定的称为根(Root)的结点;(2)当n1时,其 余结点可分为m (m0)个互不相交的有限集Tt, Ta.……,匸.其中每一个 集舍本身又是一標树,井且称为根的子树(SubTree)c
树具有以下的特点:
(01)每个节点有零个或多个子节点;
(02)没有父节点的节点称为根节点;
(03)每一个非根节点有且只有一个父节点;
(04)除了根节点外,每个子节点可以分为多个不相交的子树。
树的基本术语
1■结点的度
结点拥有的子树数称为结点的度。度为0的结点称为叶子结点或终端结点,度不为 0的结点称为非终端结点或分支结点。 除根结点以外,分支结点也称为内部结点。
树的度是树内各结点的度的最大值。
.垠结点 Qi内部结点 o叶结克或终端结点
Y *
分支结点或驻终站结煖
2■叶子:度为零的结点。
3■分支结点:度不为零的结点。
4■树的度:树中结点的最大的度。
5■层次与深度
结点的层次(3杆el)从根开始定义起,根为第一层,根的孩子为第二层.若某结 点在第I层,则夷子树的根就在第1+1层。其双亲在同一层的结点互为堂兄弟*显然 图6-2-6中的D. F是卓兄弟卜而G. H, L )也是.树中结点的最大层次称为树 的深度(Depth)或高度”当前树的裸度为4. ...
f一 深度为4
堂兄弟 !■ I
6■树的高度:树中结点的最大层次。
7■无序树:如果树中结点的各子树之间的次序是不重要的,可以交换位置。
8■有序树:如果树中结点的各子树之间的次序是重要的 ,不可以交换位置。
9■森林:0个或多个不相交的树组成。 对森林加上一个根,森林即成为树;删去根, 树即成为森林。
树的存储结构
1?简单的顺序存储不能满足树的实现
2?结合顺序存储和链式存储来实现
三种表示方法
? 双亲表示法
? 孩子表示法
?孩子兄弟表示法
1■双亲表示法
在每个结点中,附设一个指示器指示其双亲结点到链表中的位置
1 data
parent
下标
data
parent
0
A
-1
1
B
0
2
C
0
3
D
1 l;
4
1
E
\2 j
5
F
2 J
l[
G
3
7
1
H
3
8
1
3
9
1
■ ■ ■■ ■尸 1 ■董 L?—
4
2■孩子表示法
1?方案一
2?方案二
GO HO 【0
GO HO 【0 J 0
3?最终方案
把每个结点的孩子结点排列起来,以单链表作为存储结构,则 n个结点有n个孩子
链表,如果是叶子结点则此单链表为空,然后 n个头指针又组成一个线性表,采用
顺序存储结构,存放在一个一维数组中
Ft? dita firslchild chttd ntxi
V
二
C
D
E
、
F
A
G
A
H
A
I
A
J
A
3
A
9
A
2
A
I
5
A
8
A
3■孩子兄弟表示法 任意一棵树,它的结点的第一个孩子如果存在就是唯一的,它的右兄弟如果存在也 是唯一的。因此,我们设置两个指针,分别指向该结点的第一个孩子和此结点的右 兄弟
[ firstthilE rightsib
二叉树
例子:猜100以内的整数,注意猜的次数不能超过 7个,回答者只回答大了还是小 了
二叉树(Binary Tree )是n ( nO )个结点的初眼集合\该集合 或者为空集(称为空二叉树h或吉由一个樣结点和两標章不相交
的.分别称为根结点的左子樹和右子树的二叉树组成。
1■二叉树的定义
二叉树是每个节点最多有两个子树的树结构。它有五种基本形态:二叉树可以是空 集;根可以有空的左子树或右子树;或者左、右子树皆为空。
各种雄$居心
2■二叉树的性质
性质1:在二叉树的第i层上至多有2(i-1)个结点(i=1 )。
性质2:深度为k的二叉树至多有2(k)-1个结点(k=1 )。
性质3:对任何一颗二叉树T,如果其终端结点数为nO,度为2的结点数为n2,则n0
=n2+1.
性质4:包含n个结点的二叉树的高度至少为log2(n+1)。
性质5:如果对一颗有n个结点的完全二叉树(其深度为[log2n]+1 )的结点按层序编 号(从第1层到第[log2n]+1层,每层从左到右),对任意一个结点 i(1=i=n)有:
.如果i=1,则结点i是二叉树的根,无双亲;如果i1,则其双亲是结点[i/2]
2) .如果2in,则结点i无左孩子(结点i为叶子结点);否则其左孩子是结点 2i。
3) .如果2i+1n,则结点i无右孩子;否则其右孩子是结点 2i+1。
性质1在二叉树的第i层上至多有2(|-1)个结点(i=1 )。
证明:下面用”数学归纳法”进行证明。
(1)当i=1时,第
您可能关注的文档
- 090416242821_004施工期间交通组织设计3份,横穿石峰岩路,封面单位名称上方盖章及骑缝章.docx
- 13307回风顺槽规程.docx
- 20091102认证中心颁布的GMP审计模版药品GMP企业内部审计(自检)模版.docx
- 20160815(B#仓库预应力管桩试打桩会议纪要)前场铁路大型货场物流园区(一期)项目启动工程.docx
- 20160926-D#仓库锤击桩试打桩20160926会议纪要及试桩记录.docx
- 20161011-D#仓库静压管桩试打桩会议纪要.docx
- 20170314-配套综合楼地基与基础分部验收会议纪要.docx
- 20170517-C#主体结构--主体结构分部验收会议纪要.docx
- 20170710-公厕--主体结构分部验收会议纪要.docx
- 20191214李冠杰老师的课(全).docx
- 中国国家标准 GB/T 4797.3-2024环境条件分类 自然环境条件 第3部分:生物.pdf
- GB/T 4797.3-2024环境条件分类 自然环境条件 第3部分:生物.pdf
- 《GB/T 10395.28-2024农业机械 安全 第28部分:移动式谷物螺旋输送机》.pdf
- 中国国家标准 GB/T 10395.28-2024农业机械 安全 第28部分:移动式谷物螺旋输送机.pdf
- GB/T 10395.28-2024农业机械 安全 第28部分:移动式谷物螺旋输送机.pdf
- 高中数学学考复习优化练习20空间点、直线、平面之间的位置关系含答案.docx
- 刘静心 82003005 材加概论结课论文(2).pdf
- 社会实践登记表1.doc
- 刘静心 82003005 材加概论结课论文.docx
- 十三五全面二孩政策解读.ppt
文档评论(0)