Python 冒泡排序算法详解及代码实现
以下是 Python 冒泡排序的代码:
def bubble_sort(arr):
n = len(arr)
# 遍历所有数组元素
for i in range(n):
# 最后i个元素已经排好序了
for j in range(0, n-i-1):
# 如果当前元素大于下一个元素,则交换它们的位置
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
使用示例:
arr = [64, 34, 25, 12, 22, 11, 90]
sorted_arr = bubble_sort(arr)
print(sorted_arr)
# 输出:[11, 12, 22, 25, 34, 64, 90]
在上述代码中,我们定义了一个名为bubble_sort的函数,它接受一个数组作为输入,并返回一个已排序的数组。该函数使用常见的冒泡排序算法来排序数组。
在冒泡排序中,我们从数组的第一个元素开始,比较它和下一个元素的大小。如果第一个元素比第二个元素大,则交换它们的位置。然后我们继续比较第二个和第三个元素,以此类推。在第一轮遍历结束后,最大的元素会被放在数组的末尾。然后我们继续进行下一轮遍历,但这一次我们只需要比较前n-1个元素(因为最后一个元素已经排好序了)。这样,我们每轮遍历都可以将一个元素放到正确的位置。最后,整个数组都会被排序。
原文地址: https://www.cveoy.top/t/topic/m6Sl 著作权归作者所有。请勿转载和采集!