网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)

假设待查找区间的起始位置和终止位置分别为low和high,则二分查找算法在下面情况出现时说明找不到要查找的数据()。

A.low >high

B.low<high

C.low=high

D.low<=high


参考答案和解析
low >high
更多 “假设待查找区间的起始位置和终止位置分别为low和high,则二分查找算法在下面情况出现时说明找不到要查找的数据()。A.low >highB.low<highC.low=highD.low<=high” 相关考题
考题 在索引顺序表中查找一个元素,可用的且最快的方法是()。 A.用顺序查找法确定元素所在块,再用顺序查找法在相应块中查找B.用顺序查找法确定元素所在块,再用二分查找法在相应块中查找C.用二分查找法确定元素所在块,再用顺序查找法在相应块中查找D.用二分查找法确定元素所在块,再用二分查找法在相应块中查找

考题 N个有序整数数列已放在一维数组中,给定下列程序中,函数fun()的功能是:利用折半查找算法查找整数m在数组中的位置。若找到,则返回其下标值:反之,则返回-1。折半查找的基本算法是:每次查找前先确定数组中待查的范围:low和high(low<high),然后把m与中间位置(mid)中元素的值进行比较。如果m的值大于中间位置元素中的值,则下一次的查找范围放在中间位置之后的元素中;反之,下次查找范围落在中间位置之前的元素中。直到low>high,查找结束。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:include <stdio.h>define N 10/*************found*********************/void fun(int a[],int m){ int low--0,high=N-l,mid;while (low<=high){ mid=(low+high)/2;if(m<a[mid])high=mid-1;/*************found*********************/else if(m>=a [mid])low=mid+1;else return(mid);}return(-1);}main (){ int i,a[N]={-3,4,7,9,13,24,67,89,100,180},k,m;printf ("a数组中的数据如下: ");for(i=0;i<N;i++) printf("%d",a[i]);printf ("Enter m: "); scanf ("%d", m);k=fun (a,m);if (k>=0) printf ("m=%d, index=%d\n",m, k);else printf("Not be found!\n");}

考题 设序列长度为n,在最坏情况下,时间复杂度为O(log2n)的算法是()。A.二分法查找B.顺序查找C.分块查找D.哈希查找

考题 广告系统为了做地理位置定向,将IPV4分割为627672个区间,并标识了地理位置信息,区间之间无重叠,用二分查找将IP地址映射到地理位置信息,请问在最坏的情况下,需要查找多少次?()A.17B.18C.19D.20

考题 二分查找算法要求被查找的表是键值_________.

考题 第四题 阅读以下说明、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

考题 设有序顺序表中有n个数据元素,则利用二分查找法查找数据元素X的最多比较次数不超过()。

考题 数据结构与算法里,折半查找中,low指向低端的记录,high指向高端的记录,每次计算中间位置mid的公式是()。A、(lowhigh)/2B、(low+high)/2C、(low-high)/2D、low/2+high/2

考题 数据结构与算法里,顺序表的查找有()A、顺序查找B、折半查找C、随机查找D、索引查找

考题 数据结构与算法里,顺序表的查找分为:顺序查找和折半查找。

考题 数据结构与算法里,顺序表的查找有顺序查找和()。A、折半查找B、线性查找C、随机查找D、索引查找

考题 数据结构与算法里,二叉排序树的查找方式和()相似,请将不是这个答案的选项选上。A、折半查找B、顺序查找C、随机查找D、跳跃式查找

考题 从有序表(14,20,33,45,54,72,87,96)中,分别用二分查找法查找45和54元素时,其查找长度分别为()和()

考题 常用查找算法有顺序查找、二分查找、分块查找,这三种查找的时间效率由低到高的排列顺序为()

考题 分块查找的时间效率()。A、低于二分查找B、高于顺序查找而低于二分查找C、高于顺序查找D、低于顺序查找而高于二分查找

考题 数据结构与算法里,顺序表的查找方法包括:顺序查找和折半查找。

考题 数据结构与算法里,顺序表的查找中,顺序查找是指()。A、跳跃式比较B、用逐一比较的办法顺序查找关键字C、随机选择位置比较D、用间隔比较的办法顺序查找关键字

考题 一组无序的数据中确定某一个数据的位置,只能使用()算法。A、顺序查找B、折半查找C、树形查找D、散列查找

考题 关于查找算法,不正确的说法是()。A、二分查找法是一种高效的查找方法B、二分查找法可以查找所有数据C、二分查找时每次都与中点数据比较D、二分查找只能应用在有序排列的数据中

考题 小李记得在硬盘中有一个主文件名为ebook的文件,现在想快速查找该文件,可以选择()。A、按名称和位置查找B、按文件大小查找C、按高级方式查找D、按位置查找

考题 填空题常用查找算法有顺序查找、二分查找、分块查找,这三种查找的时间效率由低到高的排列顺序为()

考题 单选题数据结构与算法里,折半查找中,low指向低端的记录,high指向高端的记录,每次计算中间位置mid的公式是()。A (lowhigh)/2B (low+high)/2C (low-high)/2D low/2+high/2

考题 单选题数据结构与算法里,顺序表的查找中,顺序查找是指()。A 跳跃式比较B 用逐一比较的办法顺序查找关键字C 随机选择位置比较D 用间隔比较的办法顺序查找关键字

考题 单选题数据结构与算法里,顺序表的查找有顺序查找和()。A 折半查找B 线性查找C 随机查找D 索引查找

考题 判断题数据结构与算法里,顺序表的查找分为:顺序查找和折半查找。A 对B 错

考题 单选题小李记得在硬盘中有一个主文件名为ebook的文件,现在想快速查找该文件,可以选择()。A 按名称和位置查找B 按文件大小查找C 按高级方式查找D 按位置查找

考题 单选题一组无序的数据中确定某一个数据的位置,只能使用()算法。A 顺序查找B 折半查找C 树形查找D 散列查找

考题 判断题数据结构与算法里,顺序表的查找方法包括:顺序查找和折半查找。A 对B 错