浙教版(2019)选修1《第五章 数据结构与算法》2022年单元测试卷(1)
发布:2024/4/20 14:35:0
一、填空题
-
1.数组d中存储某班级50位同学的语文和数学成绩,偶数位(第0位,第2位……)存储对应该同学的语文成绩,奇数位(第1位,第3位……)存储数学成绩。该数组已经按照两科总成绩升序排序。依据二分查找思想,设计一个在数组d中查找总成绩key的程序,如果查找成功输出语文成绩在数组中的位置。
实现该功能的python程序段如下,请在划线部分填上合适的语句或表达式。
key=int(input(“请输入成绩“))
i,j,flag=0,99,True
while i<=j and flag:
m=(i+j)//2
if ①
m=m-1
sum=②
if key=sum:
flag=False
elif ③
i=m+2
else:
j=m-2
if i>j:
print(“没有找到!“)
else:
print(“总分符合要求的语文成绩位置为:“,str(m))组卷:1引用:1难度:0.5
一、填空题
-
4.某二分查找算法的python程序段如下:
import random
d=[1,3,4,5,7,8,11,13,15,18]
key=random.randint(1,10)
if key>5:
key=key+5
i=0;j=9;n=0
while i<=j:
m=(i+j)//2
if key<d[m]:
j=m-1;n=n-1
elif key>d[m]:
i=m+1;n=n+1
else:
break
执行该程序段后,变量n的值可能有组卷:2引用:1难度:0.3 -
5.某二分查找算法的python程序段如下:
import random
d=[1,3,4,5,7,8,11,13,15,18]
key=random.randint(1,10)
if key>5:
key=key+5
i=0;j=9;n=0
while i<=j:
m=(i+j)//2
if key<d[m]:
j=m-1;n=n-1
else:
i=m+1;n=n+1
执行该程序段后,变量n的值可能有:组卷:1引用:1难度:0.3