首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
对有序数组{2、11、15、19、30、32、61、72、8
[单选题]
对有序数组{2、11、15、19、30、32、61、72、88、90、96}进行二分查找,则成功找到15需比较()次
3
4
2
5
查看答案及解析
添加笔记
邀请回答
收藏(789)
分享
16个回答
添加回答
66
推荐
zt_xcyk
C
0 1 2 3 4 5 6 7 8 9 10
2、11、15、19、30、32、61、72、88、90、96
第一次 index=(0+10)/2=5 对应32 ; 比15大 所以下次范围是 0到4
第二次 index=(0+4)/2=2 对应15 找到
编辑于 2015-10-04 15:01:14
回复(1)
33
北窗
需要两次
第一次折半查找找到的是第六个数据即32 并且32>15 所以在左半段查找
这第二次折半查找找到第三个数据,这第三个数据刚好是15,即返回。
需两次
发表于 2015-10-03 14:08:19
回复(1)
23
牛客477144号
C,
二分查找第一次:index=(0+length-1)/2
第二次:index'=(0+index-1)/2
发表于 2015-10-03 23:07:26
回复(0)
20
牛客550134号
向下取整
发表于 2015-10-23 17:08:38
回复(0)
17
牛客-007
答案:C
序列***11个数据,
第一次比较下标为11/2=5的元素32
第二次比较下标为5/2=2的元素15,得到要查找的数
发表于 2015-01-13 12:51:21
回复(0)
6
牛客315366号
只说一点,数组是从下标0开始,index=array.length/2,若index=5,不是指第5个元素,而是指数组下标为5的元素
发表于 2016-08-25 11:26:28
回复(0)
5
sunwuyi
答案:C
序列***11个数据,
第一次比较下标为11/2=5的元素32
第二次比较下标为5/2=2的元素15,得到要查找的数
发表于 2018-10-12 08:42:40
回复(0)
4
周gege
#向下取整
1、A[11/2]=A[5]=32
2、A[5/2]=A[2]=15
发表于 2020-08-15 10:20:10
回复(0)
2
牛客2851439号
刚开始时第一个元素和最后一个元素不与15比较吗,求解
发表于 2016-09-18 23:55:31
回复(3)
2
nickhu
我有点不清楚哈,但在代码中,两次比较能得出来吗?比如我们在第一次比较的时候,如果使用>a[index]作为判定条件的话,那么第二次选中15时,难道不会因为>a[index]条件不满足而跳刀第三次的比较=a[index]这个判定条件吗?这样的话难道不是3次比较吗?希望有人能解答一下哈
发表于 2016-05-11 16:46:43
回复(1)
0
frankfurt202304111049966
二分查找: index = (left -right)/2
发表于 2023-04-11 11:13:30
回复(0)
0
已注销
问题只与下标有关
发表于 2022-10-10 13:16:46
回复(1)
0
牛客424694280号
奇数的时候:就是中间值偶数的时候:取n/2取整,实际上剩下的序列是 索引为取整左边的序列。
发表于 2022-09-20 11:49:42
回复(0)
0
辉小歌
两次 1. (0+10)/2 =5 找到32 往左边找 2. (0+5)/2 =2 找到15
发表于 2022-08-06 13:12:48
回复(0)
0
牛客818246740号
<p>这是成功找到的次数</p>
发表于 2020-06-30 11:34:01
回复(0)
0
许愿OFFER6
二分查找:折半查找
发表于 2020-03-04 13:21:54
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
数组
腾讯
查找
上传者:
Will~原来而已
难度:
16条回答
789收藏
20869浏览
热门推荐
相关试题
体育课测验(二)
广度优先搜索(BFS)
拓扑排序
dfs
评论
(2)
游戏内数据分析涉猎的少,如何证明自...
评论
(1)
之前的经历中单品数据分析的经验丰富...
评论
(1)
什么样的人适合做数据分析
评论
(1)
2022 诺瓦科技 Perl re...
perl
System Verilog
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题