冒泡排序思路:
- 比较相邻的元素,如果前一个比后一个大,就把它们两个调换位置。
- 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。
- 针对所有的元素重复以上的步骤,除了最后一个。
- 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
实现代码如下:
def bubble_sort(args):
args_len=len(args)
while args_len>1:
i=0
while i < (args_len-1):
if args[i] < args[i+1]:
pass
else:
args[i],args[i+1]=args[i+1],args[i]
i+=1
args_len-=1
return args
测试一下:
bubble_sort([2,9,1,7,4,8,2])
Out[96]: [1, 2, 2, 4, 7, 8, 9]