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

欢迎免费使用小程序搜题/刷题/查看解析,提升学历,成考自考报名,论文代写、论文查重请加客服微信skr-web

阅读以下说明、C函数和问题,回答问题1和问题2将解答填入答题纸的对应栏内。 当数组中的元素已经排列有序时,可以采用折半查找(二分查找)法查找一个元素。下面的函数biSearch(intr[],intlow,inthigh,intkey)用非递归方式在数组r中进行二分查找,函数biSearch_rec(intr[],intlow,inthigh,intkey)采用递归方式在数组r中进行二分查找,函数的返回值都为所找到元素的下标;若找不到,则返回-1。 【问题1】 请填充C函数1和C函数2中的空缺,将解答填入答题纸的对应栏内。 【问题2】 若有序数组中有n个元素,采用二分查找法查找一个元素时,最多与(7)个数组元素进行比较,即可确定查找结果。 备选答案: A.?log2n+1? B.?n/2? C.n-1 D.n

(1)low<=high (2)high=mid-1 (3)low=mid+1 (4)low<=high (5)low,mid-1 (6)mid+1,high 解析:(1)表示二分法可以继续进行; (2)递归调用左半部分; (3)递归调用右半部分; (4)表示二分法可以继续进行; (5)递归调用左半部分; (6)递归调用右半部分; (7)对有序表,根据二分查找法定义,每次比较之后问题规模都会减小一半,所以2k=n,解得k=log2n,向下取整,又因为最后只剩一个元素时,也要执行查找过程,所以+1。

访客
邮箱
网址

通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作


  • 自动写文案
  • 自动写小说
  • 马上扫码让Ai帮你完成工作
通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作

  • 自动写论文
  • 自动写软件
  • 我不是人,但是我比人更聪明,我是强大的Ai
Top