niusouti.com

将数据元素2,4,6,8,10,12,14,16,18,20依次存放于一个一维数组中,然后采用折半查找方法查找数组元素12,被比较过的数组元素的下标依次为(52)。A.10,16,12B.10,12,16C.5,8,6D.5,6,8

题目

将数据元素2,4,6,8,10,12,14,16,18,20依次存放于一个一维数组中,然后采用折半查找方法查找数组元素12,被比较过的数组元素的下标依次为(52)。

A.10,16,12

B.10,12,16

C.5,8,6

D.5,6,8


相似考题
更多“将数据元素2,4,6,8,10,12,14,16,18,20依次存放于一个一维数组中,然后采用折半查找方法查找数组元 ”相关问题
  • 第1题:

    将一个n阶三对角矩阵A的三条对角线上的元素按行压缩存放于一个一维数组B中, A[0][0]存放于B[0]中。对于任意给定数组元素A[i][j],它应是数组A中第______行的元素。


    正确答案:2i+j-3
    2i+j-3 解析:在三对角矩阵中,按行压缩存储,其转换公式为k=2i+j-3。

  • 第2题:

    性表中采用折半查找法(二分查找法)查找一个数据元素,线性表应(54)。

    A.数据元素按值有序

    B.采用顺序存储结构

    C.据元素按值有序,并且采用顺序存储结构

    D.据元素按值有序,并且采用链式存储结构


    正确答案:C
    解析:只有当线性表中数据元素按值大小有序排列,并且采用顺序存储结构时才能使用折半查找方法查找元素。即使线性表中数据元素按值大小有序排列,但采用的不是顺序存储结构(如链式),仍然不能够采用折半查找方法。本题应选C。

  • 第3题:

    ●在有11个元素的有序数组a[1..11]中进行二分查找(即折半查找),依次与(37)

    比较后,成功找到元素a[5]。

    (37)

    A.a[6]、a[2]、a[5]

    B.a[6]、a[4]、a[5]

    C.a[6]、a[3]、a[4]、a[5]

    D.a[6]、a[8]、a[4]、a[5]


    正确答案:C

  • 第4题:

    第四题 阅读以下说明、C函数和问题,回答问题1和问题2将解答填入答题纸的对应栏内。
    【说明】
    当数组中的元素已经排列有序时,可以采用折半查找(二分查找)法查找一个元素。下面的函数biSearch(int r[],int low,int high,int key)用非递归方式在数组r中进行二分查找,函数biSearch_rec(int r[],int low,int high,int key)采用递归方式在数组r中进行二分查找,函数的返回值都为所找到元素的下标;若找不到,则返回-1。

    【C函数1】
    int biSearch(int r[],int low,int high,int key)
    //r[low..high] 中的元素按非递减顺序排列
    //用二分查找法在数组r中查找与key相同的元素
    //若找到则返回该元素在数组r的下标,否则返回-1
    {
    int mid;
    while((1)) {
    mid = (low+high)/2 ;
    if (key ==r[mid])
    return mid;
    else if (key (2);
    else
    (3);
    }/*while*/
    return -1;
    }/*biSearch*/

    【C 函数 2】
    int biSearch_rec(int r[],int low,int high,int key)
    //r[low..high]中的元素按非递减顺序排列
    //用二分查找法在数组r中查找与key相同的元素
    //若找到则返回该元素在数组r的下标,否则返回-1
    {
    int mid;
    if((4)) {
    mid = (low+high)/2 ;
    if (key ==r[mid])
    return mid;
    else if (key return biSearch_rec((5),key);
    else
    return biSearch_rec((6),key);
    }/*if*/
    return -1;
    }/*biSearch_rec*/ 问题:4.1 (12分)
    请填充C函数1和C函数2中的空缺,将解答填入答题纸的对应栏内。 问题:4.2 (3分)
    若有序数组中有n个元素,采用二分查找法查找一个元素时,最多与( )个数组元素进行比较,即可确定查找结果。
    (7)备选答案:
    A.[log2(n+1)] B.[n/2] C.n-1 D.n


    答案:
    解析:
    low<=high
    (2)high=mid-1
    (3)low=mid+1
    (4)low<=high
    (5)low,mid-1
    (6)mid+1,high
    (7)A
    【解析】

    本题考察折半查找。二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好,占用系统内存较少;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。
    二分查找的基本思想是将n个元素分成大致相等的两部分,取a[n/2]与x做比较,如果x=a[n/2],则找到x,算法中止;如果xa[n/2],则只要在数组a的右半部搜索x。
    总共有n个元素,渐渐跟下去就是n,n/2,n/4,....n/2^k(接下来操作元素的剩余个数),其中k就是循环的次数。

  • 第5题:

    某一维数组中依次存放了数据元素15,23,38,47,55,62,88,95,102,123,采用折半(二分)法查找元素95时,依次与( )进行了比较。

    A.62,88,95
    B.62,95
    C.55,88,95
    D.55,95

    答案:D
    解析:
    本题主要考查折半(二分)法查找算法。这里首先就需要我们能清楚理解该查找算法。
    在本题中,给出数据序列为15,23,38,47,55,62,88,95,102,123,其中有10个元素,那么首先进行比较的应该是第5个元素,即55,由于95大于55,那么应该在后半部分进行查找,这是应该与第8个元素进行比较,刚好是95,查找成功,然后结束。因此比较的元素有55和95。

  • 第6题:

    采用折半查找方法进行查找,数据文件应为(),且限于().


    正确答案:有序表;顺序存储结构

  • 第7题:

    下面关于折半查找法的叙述中,正确的是()。

    • A、只要线性表中元素按值有序排列,就可以采用折半查找
    • B、只要线性表采用顺序存储结构,就可以采用折半查找
    • C、线性表中元素按值有序排列,并且采用顺序存储结构时才能采用折半查找
    • D、在链表中也可以采用折半查找

    正确答案:C

  • 第8题:

    用DOM操作查找元素,下列查找到是数组的是()。

    • A、通过标签来查找
    • B、通过id来查找
    • C、通过class查找
    • D、通过name属性查找

    正确答案:A,C,D

  • 第9题:

    将线性表的数据元素以()结构存放,查找一个数据元素所需时间不依赖于表长。

    • A、循环双链表
    • B、哈希(Hash)表
    • C、一维数组
    • D、单链表

    正确答案:C

  • 第10题:

    单选题
    将线性表的数据元素以()结构存放,查找一个数据元素所需时间不依赖于表长。
    A

    循环双链表

    B

    哈希(Hash)表

    C

    一维数组

    D

    单链表


    正确答案: B
    解析: 暂无解析

  • 第11题:

    单选题
    下面关于折半查找法的叙述中,正确的是()。
    A

    只要线性表中元素按值有序排列,就可以采用折半查找

    B

    只要线性表采用顺序存储结构,就可以采用折半查找

    C

    线性表中元素按值有序排列,并且采用顺序存储结构时才能采用折半查找

    D

    在链表中也可以采用折半查找


    正确答案: B
    解析: 暂无解析

  • 第12题:

    填空题
    在序列(2,5,8,11,15,16,22,24,27,35,50)中采用折半查找(二分查找)方法查找元素24,需要进行()次元素之间的比较。

    正确答案: 4
    解析: 暂无解析

  • 第13题:

    某一维数组中依次存放了数据元素12,23,30,38,41,52,54,76,85,在用折半(二分)查找方法(向上取整)查找元素54时,所经历“比较”运算的数据元素依次为(62)。

    A.41,52,54

    B.41,76,54

    C.41,76,52,54

    D.41,30,76,54


    正确答案:B
    解析:本题考查数据结构基础知识。设查找表的元素存储在一维数组r[1..n]中,那么在表中的元素已经按关键字递增(或递减)的方式排序的情况下,进行折半查找的方法是:首先将待查元素的关键字(key)值与表r中间位置上(下标为mid)的记录的关键字进行比较,若相等,则查找成功。若key>r[mid].key,则说明待查记录只可能在后半个子表r[mid+1..n]中,下一步应在后半个子表中再进行折半查找:若keyr[mid].key,说明待查记录只可能在前半个子表 r[1..mid-1]中,下一步应在r的前半个子表中进行折半查找,这样通过逐步缩小范围,直到查找成功或子表为空时失败为止。在题中,以中间元素41为界将数组元素分为12,23,30,38和52,54,76,85两部分,显然54在后半部分,该部分的中间元素为54(向下取整)或76(向上取整),在52、54构成的子查找表中,向上取整的中间元素为54,因此查找元素54所经历“比较”运算的数据元素依次为41,76,54。

  • 第14题:

    ● 某一维数组中依次存放了数据元素 12,23,30,38,41,52,54,76,85,在用折半(二分)查找方法(向上取整)查找元素54时,所经历“比较”运算的数据元素依次为 (62) 。

    (62)

    A. 41, 52, 54

    B. 41, 76, 54

    C. 41, 76, 52, 54

    D. 41, 30, 76, 54


    正确答案:B

  • 第15题:

    ● 某一维数组中依次存放了数据元素15,23,38,47,55,62,88,95,102,123,采用折半(二分)法查找元素95时,依次与 (60) 进行了比较。

    (60)

    A. 62, 88, 95

    B. 62, 95

    C. 55, 88, 95

    D. 55, 95


    正确答案:D

  • 第16题:

    已知有序数组a的前10000个元素是随机整数,现需查找某个整数是否在该数组中。以下方法中,( )的查找效率最高。

    A.二分查找法
    B.顺序查找法
    C.逆序查找法
    D.哈希查找法

    答案:D
    解析:

  • 第17题:

    在12个互异元素构成的有序数组 a[1..12] 中进行二分查找(即折半查找,向下取 整),若待查找的元素正好等于a[9],则在此过程中,依次与数组中的( )比较后,查找成功结束。

    A.a[6]、 a[7]、 a[8]、 a[9]
    B.a[6]、a[9]
    C. a[6]、 a[7]、 a[9]
    D.a[6]、 a[8]、 a[9]

    答案:B
    解析:

  • 第18题:

    在顺序表(2,4,6,8,10)中采用折半查找方法查找元素5,要经过()次元素之间的比较。


    正确答案:3

  • 第19题:

    在序列(2,5,8,11,15,16,22,24,27,35,50)中采用折半查找(二分查找)方法查找元素24,需要进行()次元素之间的比较。


    正确答案:4

  • 第20题:

    在DOM操作中,通过class标签查找元素找到的是一个数组。()


    正确答案:正确

  • 第21题:

    判断题
    在DOM操作中,通过class标签查找元素找到的是一个数组。()
    A

    B


    正确答案:
    解析: 暂无解析

  • 第22题:

    填空题
    采用折半查找方法进行查找,数据文件应为(),且限于().

    正确答案: 有序表,顺序存储结构
    解析: 暂无解析

  • 第23题:

    填空题
    在顺序表(2,4,6,8,10)中采用折半查找方法查找元素5,要经过()次元素之间的比较。

    正确答案: 3
    解析: 暂无解析