冒泡排序
1.算法步骤
比较相邻的元素,如果第一个比第二个大,就交换他们两个;
对每一个对相邻元素做同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。
针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
2. Python代码实现
def bubble_sort(l):
n = len(l)
while n > 0:
for i in range(1, n):
if l[i] < l[i - 1]:
l[i], l[i - 1] = l[i - 1], l[i]
n -= 1
return l
l = [6, 3, 5, 9, 12, 7]
print(bubble_sort(l))
返回结果
[3, 5, 6, 7, 9, 12]