第一次接触这个概念的朋友可能不明白什么是
“冒泡”,一般我们会想象是那种比同级别稍微高一点的内容,其实不然。整个思路就是两个两个比较,交换位置,把每一轮选出的(小)数放到列的最后,这就构成了今天的主题,冒泡排序,文字内容还是有点生疏,让我们举例说明,给大家留下深刻印象。
关于冒泡排序
题目演示
假设有一个列表
list = [5,4,3,2,1]
要求:按从小到大的顺序排序
图文演示
再次比较
然后在依次类推,最终每一轮只选出
1 个数,当最后一轮只剩 2 个元素时,结束。
总共需要比较的轮数
= 列数 - 1
比较的次数
= 列元素的个数 - 1,由于每一轮会排除一个(小)数,比较的次数会依次减 1;
代码演示
#!/usr/local/bin/python 3
#-*-coding:utf-8-*-
def bubble_sort(list) :
size=len(list)
for i in range(size-1) :
for jin range(size-1-i) :
if list[j] >list[j+1] :
list[j] , list[j+1] =list[j+1] , list[j]
return list
print(bubble_sort([5, 4, 3, 2, 1] ) )
输出结果
[1,2,3,4,5]
从上面的代码可以看出,冒泡排序算法的难度并不大,每个环节都非常紧凑,每一个都非常有逻辑性。另外,在考题中也经常容易遇到,大家一定要细心掌握。
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python如何清除窗口计算历史?12/24
- ♥ Python静态函数与普通方法的区别12/14
- ♥ Python 新手 FAQ 1:搞乱表达式01/13
- ♥ python中的bool是什么09/13
- ♥ 什么是 python 中的 ssl 身份验证?12/15
- ♥ Python如何调用m文件10/03
内容反馈