排序算法

Mr.Clark小于 1 分钟排序算法

常见算法

常见排序算法包括「冒泡排序」、「插入排序」、「选择排序」、「快速排序」、「归并排序」、「堆排序」、「基数排序」、「桶排序」。

冒泡排序

list=[  x  for x in range(100,0,-1) ]
print(list)
def bubble_sort(list):
    length = len(list)
    for i in range(length - 1):
        for j in range(length - i - 1):
            if list[j] > list[j + 1]:
                list[j], list[j + 1] = list[j + 1], list[j]

bubble_sort(list)
print(list)

改进版

#创建标志位flag,如果第i轮没进行交换操作代表已排序好
def bubble_sort2(list):
    length = len(list)

    for i in range(length - 1):
        flag = False
        for j in range(length - i - 1):
            if list[j] > list[j + 1]:
                list[j], list[j + 1] = list[j + 1], list[j]
                flag=True
        if not flag:
            break
bubble_sort2(list)
上次编辑于:
贡献者: Chuang Ke