数据结构查找习题及复习资料_第1页
数据结构查找习题及复习资料_第2页
数据结构查找习题及复习资料_第3页
数据结构查找习题及复习资料_第4页
数据结构查找习题及复习资料_第5页
免费预览已结束,剩余5页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 / 10 第 9 章 查找 一、单选题 1. 对一棵二叉搜索树按()遍历,可得到结点值从小到大的排列序列。 A. 先序 B. 中序 C. 后序 D. 层次 2. 从具有 n 个结点的二叉搜索树中查找一个元素时, 在平均情况下的时间复杂度大致为 ()。 2 A. O(n) B. O(1) C. O(logn) D. O(n 2) 3. 从具有 n 个结点的二叉搜索树中查找一个元素时,在最坏情况下的时间复杂度为() 。 A. O(n) B. O(1) C. O(logn) D. O(n 2) 4. 在二叉搜索树中插入一个结点的时间复杂度为() 。 A. O(1) B. O(n) C. O(lo

2、gn) D. O(n 2) 5. 分别以下列序列构造二叉搜索树,与用其它三个序列所构造的结果不同的是() 。 A (100, 80, 90, 60, 120, 110, 130) B. (100, 120, 110, 130, 80, 60, 90) C. (100, 60, 80, 90, 120, 110, 130) D (100, 80, 60, 90, 120, 130, 110) 6. 在一棵 AVL 树中,每个结点的平衡因子的取值范围是() 。 A. -1 1 B. -2 2 C. 1 2 D. 0 1 7. 根据一组关键字( 56, 42, 50, 64,48)依次插入结点生成一

3、棵 AVL 树,当插入到值 为()的结点时需要进行旋转调整。 A. 42 B. 50 C. 64 D. 48 8. 深度为 4 的 AVL 树至少有()个结点。 A9 B. 8 C. 7 D. 6 9. 一棵深度为 k 的 AVL 树,其每个分支结点的平衡因子均为 0,则该平衡二叉树共有 () 个结点。 A.2k-1-1 B.2k-1+1 C.2k-1 D.2k 10. 在 AVL 树中插入一个结点后造成了不平衡,设最低的不平衡结点为 A ,并已知 A 的左 孩子的平衡因子为 0,右孩子的平衡因子为 1,则应作( ) 型调整以使其平衡。 A. LL B. LR C. RL D. RR 二、判断

4、题 2 / 10 1. 二叉搜索树的任意一棵子树中, 关键字最小的结点必无左孩子, 关键字最大的结点必无 右孩子。 2. 二叉搜索树中每个结点的关键字值大于其左非空子树 (若存在的话)所有结点的关键字 值,且小于其右非空子树(若存在的话)所有结点的关键字值。 3. 二叉搜索树按照中序遍历将各结点打印出将各结点打印出来, 将得到按照由小到大的排 列。 4. 若二叉搜索树的根结点没有左儿子,则根结点一定是值最小的结点。 5. 二叉搜索树一定是满二叉树。 6. 从二叉搜索树的根结点一直沿右儿子向下找不一定能找到树中值最大的结点。 7. 二叉搜索树的充要条件是任一结点的值均大于其左孩子的值,小于其右孩

5、子的值。 8. 若二叉搜索树中关键码互不相同,则其中最小元素和最大元素一定是叶子结点。 9. 在任意一棵非空二叉搜索树中,删除某结点后又将其插入,则所得二叉搜索树与原二叉 搜索树相同。 10. 当向二叉搜索树中插入一个结点,则该结点一定成为叶子结点。 11. AVL 树是指左右子树的高度差的绝对值不大于 1 的二叉树。 12. AVL 是一棵二叉树,其树上任一结点的平衡因子的绝对值不大于 1。 13. 在 AVL 树中,向某个平衡因子不为零的结点的树中插入一新结点,必引起平衡旋转。 三、填空题 1. 在一棵二叉搜索树上实施 _ 遍历后,其关键字序列是一个有序表。 2. 一个无序序列可以通过构造

6、一棵 _ 而变成一个有序序列,构造树的过程即为对无 序序列进行排序的过程。 3. 在一棵二叉搜索树中,每个分支结点的左子树上所有结点的值一定 _ 该结点的值, 右子树上所有结点的值一定 _ 该结点。 4. 从一棵二叉搜索树中查找一个元素时,若元素的值等于根结点的值,则表明 _, 若元素的值小于根结点的值,则继续向 _ 查找,若元素的值大于根结点的值,则 继续向 _ 查找。 5. 向一棵二叉搜索树中插入一个元素时, 若元素的值小于根结点的值, 则接着向根结点的 _ 插入,若元素的值大于根结点的值,则接着向根结点的 _ 插入。 6. 根据 n个元素建立一棵二叉搜索树的时间复杂度大致为 _ 。 7.

7、 二叉树中某一结点左子树的深度减去右子树的深度称为该结点的 3 / 10 8. 深度为 4 的平衡二叉树中至少有 _ 个结点,至多有 _ 个结点。 9. 在一棵 AVL 树中,每个结点的左子树高度与右子树高度之差的绝对值不超过 四、应用题 1. 一棵二叉搜索树的结构如下图所示,结点的值为 18,请标出各结点的值。 2. 若依次输入序列62,68,30,61,25,14,53,47,90,84中的元素,生成一棵二叉搜索树。画出 生成后的二叉搜索树(画出生成过程) 。 3. 依次读入给定的整数序列 7,16,4,8,20,9,6,18,5,构造一棵二叉搜索树,并计算在等概率 情况下该二叉搜索树的平

8、均查找长度 ASL。(要求给出构造过程) 4. 从空二叉树开始,严格按照二叉搜索树的插入算法(不进行平衡旋转) ,逐个插入关键 码18, 73, 10, 5, 68, 99, 27, 41,51,32, 25构造出一棵二叉搜索树,画出这棵二叉搜索树 并写出其前序、后序遍历序列。 5. 若一棵二叉搜索树的关键字输入序列为 80 , 6, 10, 7, 8, 25, 100, 90,请画出该二 叉搜索树。 6. 设有一组初始记录关键字为 (45 , 80, 48, 40, 22, 78),要求构造一棵二叉搜索树并给 出构造过程。 7. 假定一个关键字序列为(38, 52, 25, 74, 68,

9、16, 30, 54, 90, 72),画出按序列中元素的次序 生成的一棵二叉搜索树,求出其平均查找长度。 8. 将数列(24, 15 , 38, 27, 121, 76, 130)的各元素依次插入一棵初始为空的二叉搜索 树中,请画出最后的结果并求等概率情况下查找成功的平均查找长度。 9. 输入一个正整数序列40, 28, 6, 72, 100, 3, 54, 1,80, 91,38,建立一棵二叉搜索树, 然后 删除结点 72,分别画出该二叉树及删除结点 72 后的二叉树。 10. 根据元素插入的先后次序不同, 可构成多种形态的二叉搜索树。 请画出 4 棵含 1 ,2,3, 4 四个元素且以

10、1 为根、深度为 3 的二叉搜索树。 11. 请画出从下面的二叉搜索树中删除关键码 40 后的结4 / 10 果。 20 3 8 45 60 28 12. 对关键字序列(25, 16, 34, 39, 28, 56), 1) 画出按此序列生成的二叉搜索树。 2) 计算等概率下查找成功时的平均查找长度。 13. 输入一个正整数序列(53, 17, 12, 66, 58, 70, 87, 25, 56, 60),试完成下列各题。 (1)按次序构造一棵二叉搜索树 BS。 依此二叉搜索树,如何得到一个从大到小的有序序列? (3) 假定每个元素的查找概率相等,试计算该二叉搜索树的平均查找长度 (4) 画

11、出在此二叉搜索树中删除“ 66”后的树结构。 14. 试推导深度为 5 的平衡二叉树最少包含多少个结点,并画出一棵这样的树。 15. 画出在一个初始为空的 AVL 树中依次插入 3, 1,4, 6, 9, 8, 5, 7 时每一插入后 AVL 树的形 态。若做了某种旋转,说明旋转的类型。 16. 给定一个关键字序列 4, 5, 7, 2, 1, 3, 6,生成一棵 AVL 树,画出构造过程。 17. 给定关键字序列 4, 5, 7, 2, 1,3, 6,分别生成二叉搜索树和 AVL 树,并用二叉搜索树和 AVL 树两种方法查找,给出查找 6 的查找次数及查找成功的平均查找长度。 18. 给定关

12、键词输入序列 CAP, AQU, PIS, ARI, TAU, GEM, CAN, LIB, VIR, LEO, SCO ,假 定关键词比较按英文字典序,试画出从一棵空树开始,依上述顺序 (从左到右)输入关 键词,用 AVL 树的插入算法生成一棵 AVL 树的过程,并说明生成过程中采用了何种转 动方式进行平衡调整,标出树中各结点的平衡因子。 参考答案 1-5. BCABC 6-10. ABCCC 1-5. WW6-10. xxx11Z13. Wx5 / 10 1. 中序 2. 二叉搜索树 3. 小于,大于 4. 查找成功,左子树,右子树 5. 左子树,右子树 6. 0( n2) 7. 平衡因子

13、 8. 7, 15 9. 1 四、 1. 3. 0 Q 0 0 0 0 o 回 o O 0 ASL= (1+2*2+3*3+4*3)/9 = 26/9 = 2.892. 6 / 10 前序: 18 10 5 73 68 27 25 41 32 51 99 后序: 5 10 25 32 51 41 27 68 99 73 18 5. 8. 平均查找长度=1+2 X 2+3 X 2+4 X 2=19/74. 6. 7. 二叉搜索树如图所示,平均查找长度等于 32/10。 38 25 52 74 16 30 90 6S 54 72 7 / 10 9. 10. 0 0 11. 12. (1) (2) (1+2*2+3*2+4*1)/6 = 2.5 13. (1)构造的二叉搜索树为:Q S) (4 )删除结点 66 后 二叉搜索树 54 SO 删除 72 后的二叉搜索树 40 SO ?! 8 / 10 后读左子树的遍历这颗二叉树就可以了。 如果是要从小到大的序列, 则只需中序遍历这 颗二叉树即可。 该二叉树的平均查找长度为: ASL= ( 1*1+2*2+3*4+4*3 )/10=2.9 14. 略 15

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论