首页
登录
从业资格
第四题 阅读以下说明、C函数和问题,回答问题1和问题2将解答填入答题纸的对应栏内
第四题 阅读以下说明、C函数和问题,回答问题1和问题2将解答填入答题纸的对应栏内
题库
2022-08-02
88
问题
第四题 阅读以下说明、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<r[mid]) (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<r[mid]) 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,算法中止;如果x<a[n/2],则只要在数组a的左半部分继续搜索x,如果x>a[n/2],则只要在数组a的右半部搜索x。
总共有n个元素,渐渐跟下去就是n,n/2,n/4,....n/2^k(接下来操作元素的剩余个数),其中k就是循环的次数。
转载请注明原文地址:http://tihaiku.com/congyezige/2425918.html
本试题收录于:
初级程序员题库软件水平考试初中高级分类
初级程序员
软件水平考试初中高级
相关试题推荐
病例:根据下列家系图,回答问题。 [YZ610_378_1.gif]对该家系图
根据下列家系图,回答问题。 [YZ610_320_1.gif]对该家系图中各符
属于右侧大脑卒中特有的健康问题的是A.不能画图、穿衣服B.听讲、说话能力下降C.
属于左侧大脑卒中特有的健康问题的是A.不能画图、穿衣服B.听讲、说话能力下降C.
护理诊断PSE公式中的P代表A.健康问题的相关因素 B.症状与体征 C.患者
护士欲对患者的某一问题深入了解,选用A.封闭式提问B.开放式提问C.探索式提问D
患儿,女,1岁,体重为10kg,其母向社区护士咨询有关喂养问题。该儿每日主要添加
患儿,女,1岁,体重为10kg,其母向社区护士咨询有关喂养问题。该儿每日需水量为
患儿,女,1岁,体重为10kg,其母向社区护士咨询有关喂养问题。该儿每日摄取的总
客观地确定目标人群的主要健康问题以及引起健康问题的行为因素和环境因素属于A.社会
随机试题
WhichofthefollowingsentencesisINCORRECT?A、Every100householdshave93tel
AccordingtoapapertobepublishedinPsychologicalSciencethishasanin
绝对感受性与绝对感觉阈限之间的关系是()A.绝对感受性越强,绝对感觉阈限越大
根据静水压强的特性,静止液体中同一点各方向的压强( )。A.数值相等 B
患者男性,46岁,有胃溃疡病史。近日手指关节肿胀、疼痛,清晨感觉指关节明显僵硬,
在一场关于“传承和创新哪个更重要”的辩论赛中,正方和反方进行了激烈的辩论。正方二
“我们敢说日常所见的人中,十分之九都是他们的教育所决定的”,这一观点出自( )
根据我国的《反补贴条例》,下列说法正确的是:()A.反补贴税适用于终裁决定
关于罪数的说法,下列哪一选项是错误的?A.甲在车站行窃时盗得一提包,回家一看才发
隧道通风控制系统是根据( )检测到的环境数据、交通量数据等控制风机的运转进行通风
最新回复
(
0
)