浙教版(2019)選修1《第五章 數(shù)據(jù)結(jié)構(gòu)與算法》2022年單元測試卷
發(fā)布:2024/4/20 14:35:0
一、選擇題
-
1.某二分查找算法的python程序段如下:
import random
a=[10,20,30,40,50,60,70,80]
key=random.jye.ai(a)
i,j=0,len(a)-1;s=“”
while i<=j:
m=(i+j)//2
if key==a[m]:
s=s+“M“;break
elif key<a[m]:
j=m-1;s=s+“L“
else:
i=m+1;s=s+“R“
該段代碼執(zhí)行后,s的值不可能是( ?。?/h2>組卷:0引用:1難度:0.4 -
2.某算法的python程序段如下:
from random import randint
a=[23,21,19,18,16,15,14,11]
key=randint(0,3)*2+13
i,j,c=0,len(a)-1,0
while i<=j:
m=(i+j+1)//2
if a[m]>=key:
i=m+1
else:
j=m-1
c+=1
該程序段執(zhí)行后,下列說法不正確的是( ?。?/h2>組卷:2引用:1難度:0.6 -
3.有如下 Python 程序段:
a=[10,15,32,32,45,53,53,65,77,98]
k=int(input( ));s=“”;left,right=0,len(a)-1
while left<=right:
m=(left+right)//2
if a[m]<k:
left=m+1;s=s+“R“
else:
right=m-1;s=s+“L“
該程序運行后,變量s的值可能是( ?。?/h2>組卷:2引用:1難度:0.5
一、選擇題
-
8.有如下Python程序段:
a=[99,85,74,68,53,42,34,27,20,13]
key=int(input(“請輸入一個整數(shù):“));i,j,k,c=0,9,0,“N“
while i<=j:
m=(i+j+1)//2;k=k+1
if key==a[m]:
c=“Y“;break
if key>a[m]:
j=m-1
else:
i=m+1
print(c,k)
執(zhí)行該程序段后,下列說法不正確的是( ?。?/h2>組卷:0引用:1難度:0.5 -
9.有如下Python程序段:
a=[99,85,74,68,53,42,34,27,20,13]
key=int(input(“請輸入一個整數(shù):”))
i,j,k,c,flag=0,9,0,“N”,F(xiàn)alse
while i<=j and flag==False:
m=(i+j+1)//2
k=k+1
if key==a[m]:
c=“Y“
flag=True
if key>a[m]:
j=m-1
else:
i=m+1
print(c,k)
執(zhí)行該程序段后,下列說法正確的是( )組卷:9引用:4難度:0.4