欢迎访问题库宝!

第四题 阅读以下说明、C函数和问题,回答问题1和问题2将解答填入答题纸的对应栏内。【说明】当数组中的元素已经排列有序时,可以采用折半查找(二分查找)法查找一个元素。下面的函数biSearch(int

题库宝 分享 时间: 加入收藏

考试:初级软件水平考试

科目:(初级)程序员(在线考试)

问题:

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

答案:


相关标签:

(初级)程序员     查找     问题     函数     折半     元素    

热门排序

推荐文章

如图所示,Switch A通过Switch B和NMS跨网段相连并正常通信。SwitchA 与Switch B配置相似,从给出的Switch A的配置文件可知该配置实现的是( ),验证配置结果的命 当TCP实体要建立连接时,其段头中的( )标志置1。 阅读以下说明和流程图,填补流程图中的空缺,将解答填入答题纸的对应栏内。[说明]下面流程图的功能是:在给定的两个字符串中查找最长的公共子串,输出该公共子串的长度L及其在各字符串中的起始位置(L=0时不存 对下面流程图用白盒测试方法进行测试,要满足路径覆盖,至少需要()个测试用例。白盒测试方法主要用于(52)。 现有一市售某种饼干的营养标签如表示。请进行如下计算和评价:  (1)能量密度计算和评价。  (2)营养质量指数和评价。营养质量指数和评价。 在Windows系统中,当用户选择C:Documentsu76ee录中的一个文件图标,并执行"剪切"命令后,被"剪切"的文件会放在 ( )中;若用户要浏览"图片收藏"文件夹中存放的图像文件的大致内容, 使用UML对系统进行分析设计时,需求描述中的"包含""组""分为……部分"等词常常意味着存在 ( ) 关系。下图表示了这种关系。 采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数已经排好序,将第i个整数依次和第i-1,i-2,…个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5, 某数据库系统中,假设有部门关系:Dept(部门号,部门名,负责人,电话),其中,“部门号”是该关系的主键;员工关系Emp(员工号,姓名,部门,家庭住址),属性“家庭住址”包含省、市、街道以及门牌号,该 对于如下所示的序列图所描述的场景,最适合于采用的设计模式是( );该模式适用的场合是(请作答此空)
221381
领取福利

微信扫码领取福利

微信扫码分享