冒泡排序是一种简单的排序算法,它也是一种稳定排序算法。其实现原理是重复扫描待排序序列,并比较每一对相邻的元素,当该对元素顺序不正确时进行交换。一直重复这个过程,直到没有任何两个相邻元素可以交换,就表明完成了排序。
def bubble_sort_descend(sort_list):
"""由大到小排序"""
n = len(sort_list)
for i in range(n - 1, 0, -1):
for j in range(i):
if sort_list[j] < sort_list[j + 1]:
sort_list[j], sort_list[j + 1] = sort_list[j + 1], sort_list[j]
def bubble_sort_ascend(sort_list):
"""由小到大排序"""
n = len(sort_list)
for i in range(n - 1, 0, -1):
for j in range(i):
if sort_list[j] > sort_list[j + 1]:
sort_list[j], sort_list[j + 1] = sort_list[j + 1], sort_list[j]
test_list = [12, 3, 5, 9, 23, 10, 2, 5]
print(test_list)
bubble_sort_descend(test_list)
print(test_list)
bubble_sort_ascend(test_list)
print(test_list)