第一次接触这个概念的小伙伴可能不大明白什么是“冒泡”,一般我们都会想象是那种比同一级别高一点的内容,其实事实上并不然, 整个思路,就是两两比较,互换位置,每一轮选出(小)的数放到列尾,这就构成了今天主题,冒泡排序,文字内容还是稍显生疏,我们来用实例演示给大家深刻印象。
关于冒泡排序
题目演示
假设有一个列表 list = [5,4,3,2,1]
要求:按从小到大的顺序排序
图文演示
再次比较
然后在依次类推,最终每一轮只选出 1 个数,当最后一轮只剩 2 个元素时,结束。
总共需要比较的轮数 = 列数 - 1
比较的次数 = 列元素的个数 - 1,由于每一轮会排除一个(小)数,比较的次数会依次减 1;
代码演示
1 2 3 4 5 6 7 8 9 10 |
|
输出结果
1 |
|
从以上代码中,我们可以看出来冒泡排序算法并不是很困难,并且它的每次环节都是十分紧凑,各自都非常富有逻辑性的,另外经常容易在试题中碰到,大家一定要好好掌握。