复旦大学软件工程考研(MSE)数据结构复习资料PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2 7 24 3 37 42 42 120 2
7 24 32 37 42
KFCU D
42 120 LE
24 32 37 42 42 120
9
FCU D L E 27
Round 1 Z K
32
37 42 42 120
Round 2 C
33
24 U D L E
9
27F
ZK
37 42 42
120
65
UDL
(2) 在F中选取两棵根结点的权值最小的二叉树, 做为左、右子树构造 一棵新的二叉树。置新的二叉树的根结点的权值为其左、右子 树上根结点的权值之和。
(3) 在F中删去这两棵二叉树,加入新得的树。
(4) 重复(2) (3),直到F只含一棵树为止。这棵树就是赫夫曼树
例题
ZKF CU D L E
2 Step 1 Z
AADF pr u e e
gcb
J MMJ J S ON a ar a u ul e ct o n yn p v
范围查询
• 定义:
• 在指定集合中有多少记录的关键字是落在指定范围中
• 一维的情况:
• 记录可以看作直线上的点 • 问题可以看作有多少点落入指定线段区域中
快速排序
49 38 65 97 76 13 27 49’
• 大纲描述:
• 查找的基本概念;对线性关系结构的查找,顺序查找,二分查找; • Hash查找法,常见的Hash函数(直接定址法,随机数法),hash冲突的概念, 解决冲
突的方法(开散列方法/拉链法,闭散列方法/开址定址法),二次聚集现象; • BST树定义,性质,ADT及其实现,BST树查找,插入,删除算法; • 平衡树 (AVL) 的定义,性质,ADT及其实现,平衡树查找,插入算法,平衡因子的概
例题
• 写出如右图所示树的先根、 后根、层次序遍历结果
给出如图所示树的先根、后根和层次序遍历结果
练习
将如图所示树转换为二叉树
(1) 由给=根{定结T0,的点T1n,,个T其2,权…左值, 、T{nw-右1}0,,子w其树1, 中w均2每,为…一空, w棵。n-二1},叉构树造Ti只具有有一n棵个二带叉有树权的值集w合i的F
38 65 97 76 13 27 49’
tem
4p9
27 38 65 97 76 13
49’
27 38
97 76 13 65 49’
27 38 13 97 76
65 49’
27 38 13
76 97 65 49’
27 38 13 49 76 97 65 49’
49 38 65 97 76 13 27 49’
0
26
1
41
15
68
2
若一组关键字为(26,36,
44
41,38,44,15,68,12,
3
06
06,51,25),散列函数定
义为:H(key) = key%13。
用拉练法建立的散列表为:
4
5
36
6
38
12
51
25
练习答案
01234567891111111 0123456
• 基本思想
• 当冲突发生时,使用某种方法在散列表中形成一个探查序列(也称之 为"链"),按此序列逐个单元的查找,直到找到一个指定的关键字或 碰到一个开放的地址(单元为空)为止。
• Hj = ( H(key) + dj ) MOD m
• 1 j m-1;m为hash表长度 • dj为增量数列,各种方法的不同就区别在取不同的增量数列上
念; • 优先队列与堆,堆的定义,堆的生成,调整算法;范围查询;
例题
• 已知BST树如左,请 画出插入16,再删 除36之后的BST树
练习答案
算法代码及基本的时间复杂度分析
查找方法 顺序查找 二分查找 BST查找 AVL查找
平均时间 O(n)
O(logn) O(logn) O(logn)
数据结构 2016MSE考研冲刺
树的基本概念和术语
• 节点 • 标签 • 父节点、子节点、兄弟节
点、祖先节点、子孙节点 • 路径、树枝
• 根、叶子 • 次数 • 内部节点、外部节点 • 树的次数、K次树 • 节点层次、树的高度和深
度 • 子树 • 有序树、无序树 • 森林、果园
7 111101 6
L
42
110
3
79
0
1
0 107 1
U
37
100
3
Z
2 111100 6
37 42 42
UDL
0 65 1
32
C
0 33 1
24
9
0
1F
27
习题答案
• A:0110 • B:10 • C:1110 • D:1111
• E:110 • F:00 • G:0111 • H:010
简
单
13 38 65 97 76 49 27 49’
选
择
13 27 65 97 76 49 38 49’
排
序
13 27 38 97 76 49 65 49’
示
例
13 27 38 49 76 97 65 49’
13 27 38 49 49’ 97 65 76
13 27 38 49 49’ 65 97 76
C 24
9
F 27 ZK
306
120
186
E
79
37 42 42 UDL
Round 7 (final)
107
65
32
33
C 24
9
F 27 ZK
例题
0 306 1
Letter Freq Code Bits
C
32 1110
4
D
42
101
3
120
E
0 186 1
E 120
0
1
F
24 11111
5
K
E
32
33
C
24
9
F
27
ZK
Round 3
42
65
L 32
33
C 24
9
F 27 ZK
120
79
E 37 42 UD
Round 4
120
79
107
E
37 42 42 UDL
32 C
65 33
24
9
F 27
ZK
Round 5
120
186
E
79
37 42 42 UDL
Round 6
107
65
32
33
例题
• 列出如上图所示树的所有叶子结点
• 答案:K,L,F,G,M,I,J
• 列出如上图所示树的所有分支结点
• 答案:A,B,C,D,E,H
• 树A为几次树?子树B呢?
• 答案:3,2
• 前页图所示树的高度为多少?
• 答案:4
Hale Waihona Puke Baidu
例题
• 写出左图所示二叉树的前 序、中序、后序、层次序 遍历结果
13 27 38 49 49’ 65 76 97
10
15
56
115237 056500