首页 > 代码库 > 冒泡排序

冒泡排序

1.冒泡排序的时间复杂度是(A)?(简单)
A.n^2 B.n logn C.2n D.2n+1

2.简述冒泡排序的过程?(中)
答案:
1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。
2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
3.针对所有的元素重复以上的步骤,没经过一轮操作减少一个元素。
4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

3.用冒泡排序处理下列一组数字,简单写出过程(高)
(要求写出第一轮,第二轮过程,中间的可以省略,共需要经过几轮排序,最后结果)。
15 23 14 28 13 17 20 42

答案:
第一轮:<15,23> 14 28 13 17 20 42
15 <23,14> 28 13 17 20 42
15 14 <23,28> 13 17 20 42
.......
15 14 23 13 17 20 28 42
第二轮:<15,14> 23 13 17 20 28 42
14 <15,23> 13 17 20 28 42
.......
14 15 13 17 20 <23,28> 42
14 15 13 17 20 23 28 42
。。。。。
共7轮
最后结果:
13 14 15 17 20 23 28 42

冒泡排序