冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误,就把它们交换过来。对于长度为n的数列,冒泡排序需要遍历n-1次。每次遍历会找出一个最大(或最小)值,因此n-1次遍历之后就可以完成排序。
以下是Python实现冒泡排序的示例代码:
python
def bubble_sort(arr):
n = len(arr)
# 遍历n-1次
for i in range(n - 1):
# 每次遍历都把最大值冒泡到最右边
for j in range(n - i - 1):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
return arr
在以上的代码中,使用了两层循环来实现冒泡排序,外层循环用于控制遍历次数,内层循环用于比较相邻元素的大小,并交换它们的位置。该算法的时间复杂度为O(n^2),因此对于大规模数据的排序会比较耗时,不过在小规模数据的排序中,冒泡排序是一种简单而有效的算法。