Python 冒泡排序算法详解及代码示例
冒泡排序是一种简单的排序算法,它的基本思想是重复地遍历要排序的序列,每次比较相邻两个元素,如果它们的顺序错误就交换它们的位置,直到序列已经排好序为止。以下是一个使用Python语言实现的冒泡排序的示例:
def bubble_sort(arr):
n = len(arr)
for i in range(n):
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
在这个函数中,我们首先获取要排序的序列的长度n,然后使用两个嵌套循环遍历整个序列。外层循环控制排序的轮数,内层循环控制每一轮的比较和交换操作。具体来说,内层循环从序列的第一个元素开始,依次比较相邻的两个元素,如果前一个元素大于后一个元素,则交换它们的位置。这样,每一轮循环都会把序列中最大的元素移到序列的最后面,从而逐步完成排序。
最后,我们返回排好序的序列。
示例:
arr = [64, 34, 25, 12, 22, 11, 90]
sorted_arr = bubble_sort(arr)
print(sorted_arr) # [11, 12, 22, 25, 34, 64, 90]
以上就是一个简单的冒泡排序实现。需要注意的是,冒泡排序算法的时间复杂度为O(n^2),在处理大规模数据时可能会比较慢,因此不适合处理大型数据集。
原文地址: https://www.cveoy.top/t/topic/odv0 著作权归作者所有。请勿转载和采集!