📜  Python冒泡排序(1)

📅  最后修改于: 2023-12-03 15:34:27.714000             🧑  作者: Mango

Python冒泡排序

Python冒泡排序是一种简单的排序算法。它重复地走访过要排序的元素,依次比较相邻两个元素,如果顺序不对则交换它们的位置。经过一轮的比较,最大的元素会沉到最底部,下一轮排序时就可以不再考虑已经排好序的最后一个元素。

算法步骤
  1. 比较相邻的元素。如果第一个比第二个大,就交换它们两个。

  2. 继续比较下一对相邻的元素,直到把最大的元素移动到最后一个元素的位置。

  3. 重复步骤1和2,除了最后一个元素以外,直到整个列表都被排好序。

代码实现
def bubble_sort(lst):
    n = len(lst)
    for i in range(n-1):
        for j in range(n-1-i):
            if lst[j] > lst[j+1]:
                lst[j], lst[j+1] = lst[j+1], lst[j]
    return lst

以上代码实现了一个基本的冒泡排序函数bubble_sort,参数为一个待排序的列表,返回值为排序好的列表。通过两层循环遍历列表,依次比较相邻的元素,如果顺序不对则交换它们的位置。每一轮比较直到最大的元素移动到最后一个元素的位置,下一轮排序时就可以不再考虑已经排好序的最后一个元素,直到整个列表都被排好序。