chap8 查找(单选题)

2-1

已知一个长度为16的顺序表L,其元素按关键字有序排列。若采用二分查找法查找一个L中不存在的元素,则关键字的比较次数最多是: (2分)

  1. 4
  2. 5
  3. 6
  4. 7

2-2

用二分查找从100个有序整数中查找某数,最坏情况下需要比较的次数是:(2分)

  1. 7
  2. 10
  3. 50
  4. 99

2-3

在有n(n>1000)个元素的升序数组A中查找关键字x。查找算法的伪代码如下所示:

k = 0;
while ( k<n 且 A[k]<x )  k = k+3;
if ( k<n 且 A[k]==x )  查找成功;
else if ( k-1<n 且 A[k-1]==x ) 查找成功;
     else if ( k-2<n 且 A[k-2]==x ) 查找成功;
          else 查找失败;

本算法与二分查找(折半查找)算法相比,有可能具有更少比较次数的情形是:(2分)

  1. 当x不在数组中
  2. 当x接近数组开头处
  3. 当x接近数组结尾处
  4. 当x位于数组中间位置

2-4

下列二叉树中,可能成为折半查找判定树(不含外部结点)的是: (4分)

答案:1

2-5

若二叉搜索树是有N个结点的完全二叉树,则不正确的说法是:(1分)

  1. 所有结点的平均查找效率是O(logN)
  2. 最小值一定在叶结点上
  3. 最大值一定在叶结点上
  4. 中位值结点在根结点或根的左子树上

2-6

若一棵二叉树的后序遍历序列是{ 1, 3, 2, 6, 5, 7, 4 },中序遍历序列是{ 1, 2, 3, 4, 5, 6, 7 },则下列哪句是错的?(3分)

  1. 这是一棵完全二叉树
  2. 2是1和3的父结点
  3. 这是一棵二叉搜索树
  4. 7是5的父结点

2-7

将{ 32, 2, 15, 65, 28, 10 }依次插入初始为空的二叉搜索树。则该树的前序遍历结果是:(3分)

  1. 2, 10, 15, 28, 32, 65
  2. 32, 2, 10, 15, 28, 65
  3. 10, 28, 15, 2, 65, 32
  4. 32, 2, 15, 10, 28, 65

2-8

若一棵二叉树的前序遍历序列是{ 4, 2, 1, 3, 6, 5, 7 },中序遍历序列是{ 1, 2, 3, 4, 5, 6, 7 },则下列哪句是错的?(3分)

  1. 这是一棵完全二叉树
  2. 所有的奇数都在叶子结点上
  3. 这是一棵二叉搜索树
  4. 2是5的父结点

2-9

将{ 5, 11, 13, 1, 3, 6 }依次插入初始为空的二叉搜索树。则该树的后序遍历结果是:(3分)

  1. 3, 1, 5, 6, 13, 11
  2. 3, 1, 6, 13, 11, 5
  3. 1, 3, 11, 6, 13, 5
  4. 1, 3, 5, 6, 13, 11

2-10

对二叉搜索树进行什么遍历可以得到从小到大的排序序列? (1分)

  1. 前序遍历
  2. 后序遍历
  3. 中序遍历
  4. 层次遍历

2-11

若二叉搜索树是有N个结点的完全二叉树,则不正确的说法是:(1分)

  1. 平均查找效率是O(logN)
  2. 最大值一定在最后一层
  3. 最小值一定在叶结点上
  4. 中位值结点在根结点或根的左子树上

2-12

已知8个数据元素为(34,76,45,18,26,54,92,65),按照依次插入结点的方法生成一棵二叉搜索树后,最后两层上的结点总数为: (2分)

  1. 1
  2. 2
  3. 3
  4. 4

2-13

下列叙述正确的是()。 (2分)

  1. 在任意一棵非空二叉搜索树,删除某结点后又将其插入,则所得二叉搜索树与删除前原二叉搜索树相同。
  2. 二叉树中除叶结点外, 任一结点X,其左子树根结点的值小于该结点(X)的值;其右子树根结点的值≥该结点(X)的值,则此二叉树一定是二叉搜索树。
  3. 虽然给出关键字序列的顺序不一样,但依次生成的二叉搜索树却是一样的。
  4. 在二叉搜索树中插入一个新结点,总是插入到最下层,作为新的叶子结点。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值