2012 初赛知识点梳理
DESCRIPTION
树. 2012 初赛知识点梳理. 数据结构 :. 线形结构 : 数据元素的逻辑位置之间呈 线性关系 ,即每一个数据元素通常只有一个前驱(除第一个元素外)和一个后继(除最后一个元素外)。不管其存储方式(顺序和链式)如何 . 一维数组 、 栈、队列 非线形结构 : 至少存在一个结点(数据元素)有多于一个前驱或后继的数据结构称为非线性结构。 树、图. 问. 一对刚出生的兔子 过两个月后 , 可以繁殖一对新兔子 , 问原有雌雄各一只兔子 , 经过十一个月后 , 能繁殖多少只兔子兔子?. 认识树结构. 树根. 兔子繁殖图 —— 象一株倒悬着的树. 分枝. - PowerPoint PPT PresentationTRANSCRIPT
树
2012 初赛知识点梳理
线形结构 : 数据元素的逻辑位置之间呈线性关系,即每一个数据元素通常只有一个前驱(除第一个元素外)和一个后继(除最后一个元素外)。不管其存储方式(顺序和链式)如何 .
一维数组 、 栈、队列
非线形结构 : 至少存在一个结点(数据元素)有多于一个前驱或后继的数据结构称为非线性结构。
树、图
数据结构 :
一对刚出生的兔子过两个月后 , 可以繁殖一对新兔子 , 问原有雌雄各一只兔子 , 经过十一个月后 , 能繁殖多少只兔子兔子?
问
认识树结构兔子繁殖图——象一株倒悬着的树
树根
分枝
树叶
第一个月后即第二个月时, 1 对兔子变成了两对兔子,其中一对是它本身,另一对是它生下的幼兔. 第三个月时两对兔子变成了三对,其中一对是最初的一对,另一对是它刚生下来的幼兔,第三对是幼兔长成的大兔子
空树(不含结点);非空树(至少一个结点)
树结构没有封闭的回路思考:树中结点和边的关系
(a) 一棵树结构 (b) 一个非树结构 (c) 一个非树结构
A
CB
GFED
H I
A
CB
GFD
A
CB
GFD
E
2 、结点的分类
结点一般分成三类
⑴根结点:没有父亲的结点。在树中有且仅有一个根结点。
⑵分支结点:除根结点外,有孩子的结点称为分支结点。
⑶叶结点:没有孩子的结点称为树叶。
根结点到每一个分支结点或叶结点的路径是唯一的。
从根 A 到结点 M 的唯一路径为 ADHM。
层级关系
Ë ï-1 Ë ï-2
- 1儿
Ë ï
- 2儿
Ë ï-1 Ë ï-2 Ë ï-3
- 3儿
¸ Ç̧ ×
3 、树的度
⑴结点的度:一个结点的子树数目称为该结点的度。
⑵树的度:所有结点中最大的度称为该树的度 ( 宽度)。
A
B C D
E F G H I J
K L M
结点 A 的度: 3结点 B 的度: 2结点 M 的度: 0
叶子结点: K , L , F , G , M , I , J
结点 A 的子结点: B , C , D结点 B 的子结点: E , F
结点 I 的父结点: D结点 L 的父结点: E
树的度: 3
根结点: A
子树
4 、树的深度(高度) 树是分层次的。结点所在的层次是从根算起的。根结点在第一层,根的儿子在第二层,其余各层依次类推。图中的树共有 4 层。在树中,父结点在同一层的所有结点构成兄弟关系。 树中最大的层次称为树的深度,亦称高度。图中树的深度为 4 。
1
2
3
4
有序树、无序树:如果一棵树中结点的各子树从左到右是有次序的,称这棵树为有序树;反之,称为无序树。
数据结构中讨论的一般都是有序树
A
CB
GFED
A
C B
G FED
5 、森林
所谓森林,是指若干棵互不相交的树的集合。如图去掉根结 点 A , 其 原 来 的 三 棵 子 树 Tb , Tc , Td 的 集 合{Tb , Tc , Td} 就为森林,这三棵子树的具体形态如图( c )。
二叉树的定义 二叉树是一种重要的树状结构。 二叉树是 n(n0) 个结点的有限集合,具有两个特点: 如果二叉树非空,则有且只有一个根结点; 每个结点最多有两个子结点,分别以这两个子结点作为
根结点组成该结点的左子树和右子树。 二叉树的度最大为 2 。 A
F
G
E D
C B
右子树
左子树
根结点
二叉树的 5 种基本形态:
φ 空二叉树 仅有根结点的二叉树
右子树为空的二叉树
左、右子数均为非空的二叉树
左子树为空的二叉树
练习题
由 3 个结点可以构造出多少种不同的二叉树 ?
答案 : 共 5 种
如果是 4 个结点,二叉树应该有多少种形态?
C63
4=
4
6*5*4
1*2*3 4= 5
斜树1 . 所有结点都只有左子树的二叉树称为左斜树;2 . 所有结点都只有右子树的二叉树称为右斜树;3. 左斜树和右斜树统称为斜树。
1. 在斜树中,每一层只有一个结点;
2. 斜树的结点个数与其深度相同。
几种特殊形式的二叉树
斜树的特点:
A
B
C
A
B
C
满二叉树
满二叉树是指除了最后一层外,每一层的结点都有两个子结点的二叉树。也就是说,在满二叉树的任何一层上,结点的数目都达到最大值。
A
G F E D
C B A
C B
深度为 3 的满二叉树 深度为 2 的满二叉树
• 完全二叉树
前 k-1 层中的结点都是“满”的,且第 k 层的结点都集中在左边。
A
E D
C B
A
F E D
C B
完全二叉树是二叉树的特例 满二叉树又是完全二叉树的特例
1
2 3
11
4 5
8 9 12 13
6 7
10 14 15
1
2 3
11
4 5
8 9 12
6 7
10
1
2 3
4 5
6 7
1
2 3
4 5 6
指出正确的完全二叉树
平衡二叉树
平衡二叉树的左右子树都是平衡二叉树,并且左右子树的深度的差值的绝对值不超过 1. 平衡二叉树上的任何节点的左子树和右子树的深度的差值只能是- 1 、0 或 1根据平衡二叉树的性质,不难得到,对于 N>2 的平衡二叉树,其前 N-2 层必然是完全二叉树
有 12 个节点的平衡二叉树的最大深度是 A.4 B.5 C.6 D.3
又称 AVL 树。
二叉树的性质 1
性质 1
二叉树第 i(i>=1) 层的结点总数不超过 2i-1 ;性质 2
深度为 k 的二叉树的结点总数不超过 2k-1(k>=1) 。 第 1 层 1 个结点, 20
第 2 层 2 个结点, 21
第 3 层 4 个结点, 22
第 i 层 2i-1 个结点;对于深度为 k 的二叉树所具有的结点总数为:
20+ 21+ 22+……+ 2k-1= 2k-1
二进制 1111111=10000000-1
1 1 1 1 1 1 1 1
7 8
1 、高度为 n 的均衡的二叉树是指:如果去掉叶结点及相应的树枝,它应该是高度为 n-1 的满二叉树。 在这里,树高等于叶结点的最大深度,根结点的深度为 0 ,如果某个均衡的二叉树共有 2381 个结点,则该树的树高为( )。B
2^10=1024
2^11=2048
二叉树的性质
性质 2
在任意二叉树中,如果其叶结点的个数为 N0 ,其度数为 2 的结点总数为 N2 ,则有:
N0=N2+1
N0 =4 , N2=3 N0 =6 , N2=5
设树的结点总数为 n ,度为 0 、 1 、 2 的结点个数为n0 、 n1 、 n2 ,树的边个数为 b
n=n0+n1+n2
b=n-1
b= 2n2+n1
所以有 n-1= 2n2+n1
n=2n2+n1+1
n0+n1+n2=2n2+n1+1
n0=n2+1
证明
2 、设某种二叉树有如下特点 : 结点的子树数目不是 2 个,则是 0 个。这样的一棵二叉树中有 m(m>0) 个子树为 0的结点时,该二叉树上的结点总数为 ____ 。 A . 2m+l B . 2m-1 C . 2(m-1) D . 2(m+1)
B
4 、设有一棵 k 叉树,其中只有度为 0 和 k 两种结点,设 n 0 , n k ,分
别表示度为 0 和度为 k 的结点个数,试求出 n 0 和 n k 之间的关系( n
0 = 数学表达式,数学表达式仅含 n k 、 k 和数字)。
答: n0 和 nk 之间的关系为: n0=(k-1) nk+1 。
k=2n0=n2+1
k=3n0=2n3+1
k=4n0=3n4+1
10tg 10tg 满二叉树的叶结点个数为满二叉树的叶结点个数为 NN ,则它的结点总数为( ,则它的结点总数为( C C )。)。 A. N B. 2 * N C. 2 * N – 1 D. 2 * N + 1 E. 2N – 1A. N B. 2 * N C. 2 * N – 1 D. 2 * N + 1 E. 2N – 1
115tg 5tg 一个包含 n 个分支结点(非叶结点)的非空满 k 叉树, k>=1 ,它的叶结点数目为:A ) nk+1 B ) nk-1 C ) (k+1)n-1 D ) (k-1)n+1
【分析】选择 D
考多叉树的性质, N0=(K-1)N+1 ,考试的时带入 K=2 时候,验证二叉树能得到结果。