全部科目 > 程序员 >
2022年上半年 上午试卷 综合知识
第 12 题
知识点 静态查找表  
关键词 二分查找   有序数组   数组  
章/节 常用算法  
 
 
在有11个元素的有序数组a[1...11]中进行二分查找(即折半查找),依次与(37)比 较后,成功找到元素a[5]。
 
  A.  a[6]、a[8]、a[4]、a[5]
 
  B.  a[6]、a[3]、a[4]、a[5]
 
  C.  a[6]、a[4]、a[5]
 
  D.  a[6]、a[2]、a[5]




 
 
相关试题     常用算法 

  第43题    2021年下半年  
进行快速排序时,要求待排序的关键字序列采用()方式。

  第43题    2025年上半年  
对n个关键码构成的序列采用简单选择排序法进行排序的过程是:第一趟经过n-1次关键码之间的比较,确定出最小关键码在序列中的位置后,再将其与序列的第一个关键码..

  第35题    2022年上半年  
对一棵二叉排序树进行( )遍历,可得到该二叉树中结点关键字的有序序列。

 
知识点讲解
· 静态查找表
 
        静态查找表
        对查找表经常要进行两种操作:查询某个特定的数据元素是否在查找表中;检索某个特定的数据元素的各种属性。通常只进行这两种操作的查找表称为静态查找表。静态查找表主要有顺序查找、折半查找和分块查找。
        1)顺序查找
        顺序查找,又称线性查找,顺序查找的过程是从线性表的一端开始,依次逐个与表中元素的关键字值进行比较,如果找到其关键字与给定值相等的元素,则查找成功;若表中所有元素的关键字与给定值比较都不成功,则查找失败。
        在等概率的情况下,顺序查找成功的平均查找长度为:
        
        2)折半查找
        折半查找是一种采用顺序存储结构的线性表进行查找的方法,也称二分查找。在进行折半查找之前,线性表中的数据元素必须按照关键字的值升序或降序排列。
        折半查找的过程是先将给定值与有序线性表中间位置上的元素的关键字进行比较,若两者相等,则查找成功;若给定值小于该元素的关键字,那么选取中间位置元素关键字值小的那部分元素作为新的查找范围,然后继续进行折半查找;如果给定值大于该元素的关键字,那么选取比中间位置元素关键字值大的那部分元素作为新的查找范围,然后继续进行折半查找,直到找到关键字与给定值相等的元素或查找范围中的元素数量为零时结束。平均查找长度为:
        
        3)分块查找
        分块查找又称索引顺序查找,是顺序查找的一种改进方法。在分块查找过程中,首先将表分成若干块,每一块中关键字不一定有序,但块之间是有序的。此外,还建立了一个索引表,索引表按关键字有序。分块查找过程需分两步进行:先确定待查记录所在的块,然后在块中顺序查找。
        假设长度为n的分块表分成b块,每块中元素个数为s,又设每个元素的查找概率都相等,块间块内均采用线性查找方法,则平均查找长度为:
        



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有