#JC1021. 简单排序(二)-冒泡排序
简单排序(二)-冒泡排序
一、单项选择题(每题2分,共20分)
1、冒泡排序升序排序时,每一轮会把什么“冒”到数组末尾?()。 {{ select(1) }}
- 最小值
- 最大值
- 中间值
- 随机数
2、冒泡排序的核心比较方式是?()。 {{ select(2) }}
- 相邻两个元素两两比较
- 当前元素和后面全部元素比较
- 直接比较数组首尾元素
- 只比较下标为偶数的元素
3、n个元素的数组做冒泡排序升序,外层循环一共需要执行多少轮?()。 {{ select(3) }}
- n轮
- n‑1轮
- n+1轮
- 2*n轮
4、冒泡排序内层循环j < n‑1‑i,其中变量i代表的是?()。
{{ select(4) }}
- 排序的轮数
- 数组元素的值
- 数组的总大小
- 交换的次数
5、数组 {77,45,26,86,9},冒泡排序第一轮结束之后,数组末尾的元素是?()。 {{ select(5) }}
- 9
- 45
- 77
- 86
6、冒泡排序中,当相邻两个元素顺序错误时,需要执行的操作是?()。 {{ select(6) }}
- 直接删除该元素
- 交换两个元素
- 给元素赋值为0
- 将元素移动到数组开头
7、下面关于冒泡排序和选择排序说法正确的是?()。 {{ select(7) }}
- 冒泡排序和选择排序都需要执行n‑1轮
- 冒泡排序需要查找最值下标
- 选择排序只比较相邻元素
- 两者的交换次数一定完全相同
8、有10个数字使用冒泡排序,全部比较完成一共需要多少次比较?()。 {{ select(8) }}
- 35
- 45
- 55
- 10
9、冒泡排序实现降序排列时,if判断条件应该是?()。 {{ select(9) }}
- if(a[j] < a[j+1]) 交换
- if(a[j] > a[j+1]) 交换
- if(a[j] == a[j+1]) 交换
- if(a[j] != a[j+1]) 交换
10、车厢重组题目中,使用冒泡排序,cnt计数器的作用是?()。 {{ select(10) }}
- 统计数组元素总和
- 统计元素交换的总次数
- 记录循环执行轮数
- 保存数组最大值
二、判断题(每题2分,共10分)
11、冒泡排序每一轮结束之后,至少有一个元素到达最终正确位置。() {{ select(11) }}
- 正确
- 错误
12、冒泡排序内层循环每一轮的比较次数不会随着轮数增加而减少。() {{ select(12) }}
- 正确
- 错误
13、swap(a[j],a[j+1])可以直接交换数组中下标j和j+1两个位置的元素。()
{{ select(13) }}
- 正确
- 错误
14、冒泡排序与选择排序相同,都只可以对浮点数排序,不能排整数。() {{ select(14) }}
- 正确
- 错误
15、冒泡排序外层循环控制排序轮数,内层循环控制每一轮相邻元素比较。() {{ select(15) }}
- 正确
- 错误