刷题首页
题库
高中信息
题干
某查找算法的VB程序段如下:
i=1:j=7:n=0
Key=Val (Text l. Text)
Do While i <=j
n=n+1
m=Int ((i+j)/2)
If Key=d(m) Then Exit Do
If Key <d(m) Then j= m-1 Else i =m+ l
Loop
数组元素d(1)到d(7)存放的数值依次为6,45,23,36,78,58,12,若该程序段运行结束后,n的值为2,则Key的值是( )
A.58
B.6或12
C.45或58
D.23或78
上一题
下一题
0.99难度 选择题 更新时间:2020-03-30 10:08:52
答案(点此获取答案解析)
同类题1
使用二分法从数据1,3,6,9,15,16,45中查找数据16,共经过__________次查找就可以找到。
同类题2
某对分查找算法的 VB 程序段如下:
i= 1 : j= 8 : t= 0 key=Int(Rnd()*7)+14
Do While i<=j
m=Int((i+j)/2)
t=t+1
if a(m)=key Then Exit Do
else
If a(m)>key Then j=m-1
Else
i=m+1 End if
End if
Loop
数组元素 a(1)到 a(8)的值依次为“2,11,14,15,18,19,20,22”,该程序段运行结束后,变量 t 的最大值可能是()
A.1
B.2
C.3
D.4
同类题3
用对分查找法从数列3,6,7,10,12,16,25,30,75中找到数据10的最少查找次数是( )
A.2
B.4
C.3
D.7
同类题4
有6位学生的身高分别为165,170,172,175,176,180。其中,小民的身高为175,若老师采用对分查找法想要找到小民,则需要找多少次才能够找到( )
A.2
B.3
C.4
D.5
同类题5
(加试题)某查找算法的 VB 程序段如下:
i = 1: j = 7: n = 0
Key = Val(Text1.Text)
Do While i <= j
n = n + 1
m = Int((i + j) / 2)
If Key = a(m) Then Exit Do
If Key < a(m) Then j = m - 1 Else i = m + 1
Loop
数组元素 a(1)到 a(7)存放的数值依次为 8,21,27,36,79,28,98,若该程序段运行结束后,n 的值为 2,则 Text1 中输入的要查找的数是()
A.27 或 79
B.28
C.21 或 28
D.21
相关知识点
算法理论
算法实例的程序实现
查找算法及程序实现