2012 初赛知识点梳理

31
2012 树树树树树树树

Upload: lowri

Post on 21-Jan-2016

61 views

Category:

Documents


0 download

DESCRIPTION

树. 2012 初赛知识点梳理. 数据结构 :. 线形结构 : 数据元素的逻辑位置之间呈 线性关系 ,即每一个数据元素通常只有一个前驱(除第一个元素外)和一个后继(除最后一个元素外)。不管其存储方式(顺序和链式)如何 . 一维数组 、 栈、队列 非线形结构 : 至少存在一个结点(数据元素)有多于一个前驱或后继的数据结构称为非线性结构。 树、图. 问. 一对刚出生的兔子 过两个月后 , 可以繁殖一对新兔子 , 问原有雌雄各一只兔子 , 经过十一个月后 , 能繁殖多少只兔子兔子?. 认识树结构. 树根. 兔子繁殖图 —— 象一株倒悬着的树. 分枝. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 2012 初赛知识点梳理

2012 初赛知识点梳理

Page 2: 2012 初赛知识点梳理

线形结构 : 数据元素的逻辑位置之间呈线性关系,即每一个数据元素通常只有一个前驱(除第一个元素外)和一个后继(除最后一个元素外)。不管其存储方式(顺序和链式)如何 .

一维数组 、 栈、队列

非线形结构 : 至少存在一个结点(数据元素)有多于一个前驱或后继的数据结构称为非线性结构。

                         树、图

数据结构 :

Page 3: 2012 初赛知识点梳理

一对刚出生的兔子过两个月后 , 可以繁殖一对新兔子 , 问原有雌雄各一只兔子 , 经过十一个月后 , 能繁殖多少只兔子兔子?

Page 4: 2012 初赛知识点梳理

认识树结构兔子繁殖图——象一株倒悬着的树

树根

分枝

树叶

第一个月后即第二个月时, 1 对兔子变成了两对兔子,其中一对是它本身,另一对是它生下的幼兔. 第三个月时两对兔子变成了三对,其中一对是最初的一对,另一对是它刚生下来的幼兔,第三对是幼兔长成的大兔子

Page 5: 2012 初赛知识点梳理
Page 6: 2012 初赛知识点梳理

空树(不含结点);非空树(至少一个结点)

Page 7: 2012 初赛知识点梳理

树结构没有封闭的回路思考:树中结点和边的关系

Page 8: 2012 初赛知识点梳理

(a) 一棵树结构 (b) 一个非树结构 (c) 一个非树结构

A

CB

GFED

H I

A

CB

GFD

A

CB

GFD

E

Page 9: 2012 初赛知识点梳理

2 、结点的分类

结点一般分成三类

⑴根结点:没有父亲的结点。在树中有且仅有一个根结点。

⑵分支结点:除根结点外,有孩子的结点称为分支结点。

⑶叶结点:没有孩子的结点称为树叶。

根结点到每一个分支结点或叶结点的路径是唯一的。

从根 A 到结点 M 的唯一路径为 ADHM。

Page 10: 2012 初赛知识点梳理

层级关系

Ë ï-1 Ë ï-2

- 1儿

Ë ï

- 2儿

Ë ï-1 Ë ï-2 Ë ï-3

- 3儿

¸ Ç̧ ×

Page 11: 2012 初赛知识点梳理

3 、树的度

    ⑴结点的度:一个结点的子树数目称为该结点的度。

   ⑵树的度:所有结点中最大的度称为该树的度 ( 宽度)。

Page 12: 2012 初赛知识点梳理

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

子树

Page 13: 2012 初赛知识点梳理

4 、树的深度(高度)     树是分层次的。结点所在的层次是从根算起的。根结点在第一层,根的儿子在第二层,其余各层依次类推。图中的树共有 4 层。在树中,父结点在同一层的所有结点构成兄弟关系。     树中最大的层次称为树的深度,亦称高度。图中树的深度为 4 。

1

2

3

4

Page 14: 2012 初赛知识点梳理

有序树、无序树:如果一棵树中结点的各子树从左到右是有次序的,称这棵树为有序树;反之,称为无序树。

数据结构中讨论的一般都是有序树

A

CB

GFED

A

C B

G FED

Page 15: 2012 初赛知识点梳理

5 、森林

     所谓森林,是指若干棵互不相交的树的集合。如图去掉根结 点 A , 其 原 来 的 三 棵 子 树 Tb , Tc , Td 的 集 合{Tb , Tc , Td} 就为森林,这三棵子树的具体形态如图( c )。

Page 16: 2012 初赛知识点梳理

二叉树的定义 二叉树是一种重要的树状结构。 二叉树是 n(n0) 个结点的有限集合,具有两个特点: 如果二叉树非空,则有且只有一个根结点; 每个结点最多有两个子结点,分别以这两个子结点作为

根结点组成该结点的左子树和右子树。 二叉树的度最大为 2 。 A

F

G

E D

C B

右子树

左子树

根结点

Page 17: 2012 初赛知识点梳理

二叉树的 5 种基本形态:

φ 空二叉树 仅有根结点的二叉树

右子树为空的二叉树

左、右子数均为非空的二叉树

左子树为空的二叉树

Page 18: 2012 初赛知识点梳理

练习题

由 3 个结点可以构造出多少种不同的二叉树 ?

答案 : 共 5 种

如果是 4 个结点,二叉树应该有多少种形态?

C63

4=

4

6*5*4

1*2*3 4= 5

Page 19: 2012 初赛知识点梳理
Page 20: 2012 初赛知识点梳理

斜树1 . 所有结点都只有左子树的二叉树称为左斜树;2 . 所有结点都只有右子树的二叉树称为右斜树;3. 左斜树和右斜树统称为斜树。

1. 在斜树中,每一层只有一个结点;

2. 斜树的结点个数与其深度相同。

几种特殊形式的二叉树

斜树的特点:

A

B

C

A

B

C

Page 21: 2012 初赛知识点梳理

满二叉树

满二叉树是指除了最后一层外,每一层的结点都有两个子结点的二叉树。也就是说,在满二叉树的任何一层上,结点的数目都达到最大值。

A

G F E D

C B A

C B

深度为 3 的满二叉树 深度为 2 的满二叉树

Page 22: 2012 初赛知识点梳理

• 完全二叉树

前 k-1 层中的结点都是“满”的,且第 k 层的结点都集中在左边。

A

E D

C B

A

F E D

C B

完全二叉树是二叉树的特例 满二叉树又是完全二叉树的特例

Page 23: 2012 初赛知识点梳理

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

指出正确的完全二叉树

Page 24: 2012 初赛知识点梳理

平衡二叉树

平衡二叉树的左右子树都是平衡二叉树,并且左右子树的深度的差值的绝对值不超过 1. 平衡二叉树上的任何节点的左子树和右子树的深度的差值只能是- 1 、0 或 1根据平衡二叉树的性质,不难得到,对于 N>2 的平衡二叉树,其前 N-2 层必然是完全二叉树

有 12 个节点的平衡二叉树的最大深度是 A.4 B.5 C.6 D.3

又称 AVL 树。

Page 25: 2012 初赛知识点梳理

二叉树的性质 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

Page 26: 2012 初赛知识点梳理

1 、高度为 n 的均衡的二叉树是指:如果去掉叶结点及相应的树枝,它应该是高度为 n-1 的满二叉树。 在这里,树高等于叶结点的最大深度,根结点的深度为 0 ,如果某个均衡的二叉树共有 2381 个结点,则该树的树高为( )。B

2^10=1024

2^11=2048

Page 27: 2012 初赛知识点梳理

二叉树的性质

性质 2

在任意二叉树中,如果其叶结点的个数为 N0 ,其度数为 2 的结点总数为 N2 ,则有:

N0=N2+1

N0 =4 , N2=3 N0 =6 , N2=5

Page 28: 2012 初赛知识点梳理

设树的结点总数为 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

证明

Page 29: 2012 初赛知识点梳理

2 、设某种二叉树有如下特点 : 结点的子树数目不是 2 个,则是 0 个。这样的一棵二叉树中有 m(m>0) 个子树为 0的结点时,该二叉树上的结点总数为 ____ 。   A . 2m+l    B . 2m-1    C . 2(m-1)   D . 2(m+1)

B

Page 30: 2012 初赛知识点梳理

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

Page 31: 2012 初赛知识点梳理

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 时候,验证二叉树能得到结果。