冒泡排序算法练习题(无答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
20200224冒泡排序(一)练习
一、选择题(本大题共10小题,共10.0分)
1.请先阅读以下内容,再做选择题
标准的冒泡排序是从尾向前冒泡, 可以将小的数字往前冒泡,也可以将大的数字往前冒泡, 但是注意每趟扫描冒泡时都是从尾部(最后1个数组元素)开始往前两两比较
冒泡排序也可以从头开始往后冒泡, 可以将小的数字往后(尾部)冒泡,也可以将大的数字往后(尾部)冒泡, 但是注意每趟扫描冒泡时都是从头部(第1个数组元素)开始往前两两比较
冒泡排序过程不是很清楚的同学,请看课后回放,或者上在线课堂看冒泡视频演示,在首页下方,找下可以找到播放视频连接(视频加载稍慢)
例如上课举例的数字进行冒泡排序:,
按照从小到大升序排列, 采用的冒泡规则是: 从尾部向前冒泡, 小的数交换到前面, 那么第1遍(趟)的结果是:
这个称为第1遍也称为第1趟,然后进行第2 3.4 5遍(趟)就可以完成排序.
今天本课的内容,掌握程度如何,请选择( )
A. 完全掌握
B. 一般掌握
C.有点疑问
D. 有存有很大的问题.
2.有一个数组,采用冒泡排序,第一遍排序后:
结果为:3,18,5,35,8,9,11,13,32,
那么该数组的原始顺序不可能是()
注意有可能从尾向前,也有可能从头往后冒泡,但是此题从数据结构看应该是小的数字从尾往前冒
A. 18,5,35,8,9,11,13,32,3
B. 18,5,35,8,9,11,3,13,32
C. 18,5,35,3,8,9,11,13,32
D. 3,18,5,35,13,11,32,8,9
3.下表记录了6个数据的排序过程。
分析表中数据可知,该排序采用的算法与排序方
式分别为( )
A. 冒泡排序,降序
B. 选择排序,降序
C. 冒泡排序,升序
D. 选择排序,升序
4.,84,90。
如下表所示:
若采用冒泡排序算法对其进行从小到大排序,则上表中第二遍的排序结果是()提示:看第1遍的结果,判断冒泡的方向
A. 84,90,85,95,92
B. 84,85,95,90,92
C. 84,85,95,90,92
D. 84,90,92,85,93
5.篮球联赛中,有5个班级的比赛积分依次为14,11,13,8,9。
若采用冒泡排序
算法对其进行从小到大排序,则完成第二遍时的结果是()
A. 8,11,13,14,9
B. 8,9,13,14,11
C. 8,9,14,11,13
D. 14,13,11,9,8
6.若采用冒泡排序算法对数据70,53,57,28,30,77,1进行排序,排序过程如表
所示。
则第二遍加工后的结果是()
A. 1,28,30,70,53,57,77
B. 1,28,70,53,57,30,77
C. 1,28,30,53,57,70,77
D. 1,28,30,53,70,57,77
7.2015年07月31日,国际奥委会投票选出2022年冬奥会主办城市,最终北京赢得
该项体育盛事主办权。
假设参与该次冬奥会申办的共有5个城市,得票结果分别为“7,6,3,9,2”,对该组得票数据进行从大到小排序,共需要经过()遍排序可以得到正确结果。
A. 2
B. 3
C. 4
D. 5
8.若采用冒泡排序算法对数据2, 36, 98, 15, 88, 118进行排序,排序过程如表所示。
则第二遍加工后的结果是()
温馨提示,1此题的是头往尾冒还是尾往前冒?
温馨提示2:还有填空题的题目请在在线课堂上完成
A. 2, 15, 36, 88, 98, 118
B. 98, 88, 118, 36, 15, 2
C. 98, 36, 88, 118, 15, 2
D. 98, 36, 88, 15, 118, 2
二程序填空题
有一个数组元素个数为6个, 分别为2 ,1 ,3 ,4 ,5 ,6
冒泡规则: 从头往尾冒泡, 降序(从大到小排序),请写出各趟交换后的结果
注意各元素分隔符为逗号,必须使用逗号,最后一个数写完后不需要逗号,阅卷才正确
第1趟结果:①______________________________
第2趟结果:②______________________________
第3趟结果:③______________________________
第4趟结果:④______________________________
第5趟结果:⑤______________________________
2. 数组元素有n个元素, 冒泡规则: 从数组尾部冒泡,两两交换,从小到大排序, 第1趟把最小的数放在a(1)位置循环控制变量用j表示
请写出第1趟和第2趟的VB代码, 温馨提示:就写第1趟、第2趟,不用写其他趟的情况, 这里暂不需要i变量
本上机调试的代码压缩包也在qq群和微信群在线课堂中可以下载
Const n = 6
Dim a(1 To n) As Integer
Dim j As Integer, t As Integer
a(1) = 60: a(2) = 30: a(3) = 50: a(4) = 20: a(5) = 40: a(6) = 10
'以下是第1趟的VB代码
For j = n to ①____ Step -1 '请注意step -1
If a(j) < a(j - 1) Then
'变量值互换经典的代码
t = a(j)
②______________
③______________
End If
Next j
'以下是第2趟的VB代码
For j =n to ④____ Step -1 '请注意step -1
If ⑤_______________ Then
'变量值互换的代码代码与上相同,代码略
End If
Next j
For i = 1 To n
List1.AddItem Str(a(i))
Next i
本上机调试的代码压缩包也在qq群和微信群在线课堂中可以下载
上机调试参考结果:。