算法的时间复杂度为O(n^2),基本思想就是将两两相邻的元素进行比较,大的交换到右边,这样一轮调整下来,最大的数就会上浮到最右边。重复这个步骤,直到剩下一个元素,排序完成。
def bubble_sort(list):
_len = len(list)
flag = False
for i in range(_len):
flag = True
for j in range(_len-1):
if list[j] > list[j + 1]:
temp = list[j]
list[j] = list[j+1]
list[j + 1] = temp
flag = False
if flag:
break
return list
list = [1, 10, 3, 5, 2, 4, 6, 7, 9, 8]
print( bubble_sort(list) )