python 冒泡法排序代码

2022-03-11 00:00:00 代码 排序 冒泡

python 冒泡法排序代码,本文使用了两种方式实现冒泡法排序供大家参考。

"""
作者:皮蛋编程(https://www.pidancode.com)
创建日期:2022/3/21
功能描述:python 冒泡法排序代码
"""


def BubbleSort(lst):
    lst = list(lst)  # copy collection to list
    for passesLeft in range(len(lst) - 1, 0, -1):
        for i in range(passesLeft):
            if lst[i] < lst[i + 1]:
                lst[i], lst[i + 1] = lst[i + 1], lst[i]
    return lst


def BubbleSort2(lst):
    lst = list(lst)
    swapped = True
    while swapped:
        swapped = False
        for i in range(len(lst) - 1):
            if lst[i] < lst[i + 1]:
                lst[i], lst[i + 1] = lst[i + 1], lst[i]
                swapped = True
    return lst


lst = [44, 33, 644, 22, 54, 854, 54, 2]
print(BubbleSort(lst))
print(BubbleSort2(lst))

输出结果:
[854, 644, 54, 54, 44, 33, 22, 2]
[854, 644, 54, 54, 44, 33, 22, 2]

以上代码在Python3环境下测试通过。

相关文章