📅  最后修改于: 2023-12-03 15:40:40.869000             🧑  作者: Mango
气泡排序(Bubble Sort)是一种简单的排序算法,它重复地遍历待排序数组,每次比较相邻的两个元素,如果它们的顺序错误就交换它们的位置,直到遍历完整个数组。通过多次遍历,把最大的元素逐渐放在后面,直到整个数组都有序。
以升序排序为例,以下是使用Python实现气泡排序的代码片段:
def bubble_sort(arr):
n = len(arr)
for i in range(n):
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
if __name__ == '__main__':
arr = [64, 34, 25, 12, 22, 11, 90]
print(bubble_sort(arr))
以上代码中,bubble_sort
函数接收一个待排序的数组,循环嵌套两次开始对数组进行遍历,比较相邻两个元素,如果前一个元素大于后一个元素,就交换它们的位置。外层循环的次数为数组的长度,内层循环的次数则依次递减。最终返回排序完成的数组。
虽然气泡排序算法比较简单,但其时间复杂度较高,不适合对大规模数据进行排序。在实际应用中,可以结合其他算法使用,例如快速排序和归并排序等。