27 冒泡排序巩固练习 浙教版(2019)高中信息技术选考(学考)一轮复习(含答案)

文档属性

名称 27 冒泡排序巩固练习 浙教版(2019)高中信息技术选考(学考)一轮复习(含答案)
格式 docx
文件大小 30.6KB
资源类型 教案
版本资源 浙教版(2019)
科目 信息技术(信息科技)
更新时间 2022-09-21 17:45:08

图片预览

文档简介

数据结构大单元
——冒泡排序巩固练习
班级 姓名
1. 采用冒泡排序算法对某数据序列进行排序,经过第一轮排序后的结果是“2,8,3,9,5,6,7”,那么原数据序列不可能的是( )
A.8,3,9,5,2,7,6 B.8,3,9,2,6,5,7 C.8,2,9,3,5,7,6 D.8,3,2,9,6,5,7
2. 现有三个整数序列:“1,2,3,4,5”、“7,1,6,8,3”、“9,8,7,6,5”。用冒泡排序算法分别对三个序列进行升序排列,交换次数依次为x、y、z,则下列关系正确的是( )
A.x=y=z B.x>y>z C.y>z>x D.z>y>x
3. 现有三个整数序列:“1,2,3,4,5”、“7,1,6,8,3”、“9,8,7,6,5”。用冒泡排序算法分别对三个序列进行升序排列,比较次数依次为x、y、z,则下列关系正确的是( )
A.x=y=z B.x>y>z C.y>z>x D.z>y>x
4. 某排序算法的python程序段如下:
#a数组中读取保存了n个整数,代码略
n=len(a)
for i in range(1,n):
for j in range(n-1,i-1,-1):
if a[j]>a[j-1]:
t=a[j] ; a[j]=a[j-1] ; a[j-1]=t
执行上述程序段,下列说法正确的是( )
A.交换过位置的数据,可能会再回到其初始位置
B.执行完成后,数组元素a[0]到a[n-1]从小到大排列
C.若n为5,整个排序过程总的比较次数是20
D.整个排序过程总的交换次数至少为1
5.有如下python程序段:
a=[33,24,45,16,77]
for i in range(0,2):
for j in range(4,i,-1):
if a[j]>a[i]:
a[j],a[i]=a[i],a[j]
经过该程序段“加工”后,数组元素a的值依次为( )
A.77,45,33,16,24 B.77,33,45,16,24 C.77,24,45,16,33 D.77,45,33,24,16
6.有如下python程序段:
import random
a=random.sample(range(1,100),6)
for i in range(0,1):
for j in range(5,i,-1):
if a[j]%3>a[j-1]%3:
t=a[j];a[j]=a[j-1];a[j-1]=t
执行上述程序段后,下列选项中,数组元素a的值不可能的是( )
A.2,1,4,3,6,7 B.5,2,1,7,8,3 C.7,7,6,3,3,2 D.8,7,4,3,3,2
7. 有如下python程序段:
import random
a=[49,45,5,61,42,71]
m=random.randint(2,5)
for i in range(1,5-m+1):
for j in range(0,5-i+1):
if a[j]-a[j+1]<0:
a[j],a[j+1]=a[j+1],a[j]
执行该程序段后,数组a的值不可能的是( )
A.61,49,71,45,42,5 B.49,45,61,42,71,5 C.49,61,45,71,42,5 D.71,61,49,45,42,5
8. 有如下python程序段:
a=[195,170,65,99,98] ;f=True ; i=5 ; k=0
while i>1 and f:
f=False
for j in range(0,i-1):
if a[j]t=a[j] ; a[j]=a[j+1] ; a[j+1]=t
k=k+1 ; f=True
i=i-1
该程序执行后,下列说法正确的是( )
A.数组a各元素的值是:65,98,99,170,195 B.变量k的值为3
C.数组元素65在此过程中交换了3次 D.变量i的值为3
8. 有如下python程序段:
n=0 ; i=1 ; f=True ; c=0 ;a=[10,16,82,36,51,87]
while i<=5 and f:
n=n+1 ; f=False
for j in range(5,i-1,-1):
c+=1
if a[j]a[j],a[j-1]=a[j-1],a[j]
last=j ; f=True
i=last+1
经过该程序段“加工”后,下列说法不正确的是( )
A.变量n的值为5 B.此过程中数据共需比较8次
C.此过程中数据共需交换2次 D.数组元素a(1)到a(6)的值为升序
9.有python程序段,实现功能是对a数组从小到大排序:
a=[8,4,6,1,2,5,3,9,7,0] ; i=0
while i<9:
k=i ; i=9
for j in range(9,k,-1):
if a[j]a[j],a[j-1]=a[j-1],a[j]
则划线处的语句可为( )
A.i=i+1 B.i=j+1 C.i=k-1 D.i=j
1——5: DDAAA
6——10:CDDAD
同课章节目录