给我用python写一个冒泡排序
时间: 2023-02-09 14:05:37 浏览: 112
python算法与数据结构之冒泡排序实例详解
冒泡排序是一种简单的排序算法。它的基本思想是:从左到右比较相邻的两个数,如果它们的顺序错误就交换位置。这样经过一轮比较和交换后,最大的数就会浮到最右边。然后我们再从左到右比较相邻的两个数,直到没有数需要交换位置,排序就完成了。
下面是用 Python 实现冒泡排序的代码:
```
def bubble_sort(arr):
n = len(arr)
for i in range(n):
# 标记是否有交换
flag = False
for j in range(n - i - 1):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
flag = True
# 如果没有交换,说明已经有序,退出循环
if not flag:
break
return arr
```
使用方法:
```
# 调用排序函数
sorted_arr = bubble_sort(arr)
```
其中 `arr` 是要排序的数组。
注意:冒泡排序的时间复杂度是 O(n^2),当数据规模较大时,它的运行效率较低,不适合排序大量数据。
阅读全文