Python冒泡排序算法
时间: 2023-06-28 08:13:01 浏览: 108
下面是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]
# 测试
arr = [64, 34, 25, 12, 22, 11, 90]
bubble_sort(arr)
print("排序后的数组:")
for i in range(len(arr)):
print("%d" % arr[i])
```
输出结果:
```
排序后的数组:
11
12
22
25
34
64
90
```
该算法的时间复杂度为O(n^2),当数据量较大时可能会比较慢。
相关问题
python之冒泡排序算法
冒泡排序算法是一种基本的排序算法,其原理是通过不断比较相邻的两个元素,如果有逆序则将其交换,直至整个序列有序。以下是python语言实现冒泡排序的代码:
```
def bubble_sort(arr):
n = len(arr)
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]
arr = [3, 1, 5, 2, 4]
bubble_sort(arr)
print(arr)
```
输出结果为:[1, 2, 3, 4, 5]。
python的冒泡排序算法
Python的冒泡排序算法是一种简单直观的排序算法,其基本思想是:重复遍历要排序的数列,每次比较相邻两个元素,如果它们的顺序错误就交换位置,直到没有相邻的元素需要交换为止。
以下是Python实现冒泡排序的代码示例:
```python
def bubble_sort(arr):
n = len(arr)
# 遍历所有数组元素
for i in range(n):
# Last i elements are already sorted
for j in range(0, n-i-1):
# 如果当前元素大于下一个元素,则交换它们的位置
if arr[j] > arr[j+1] :
arr[j], arr[j+1] = arr[j+1], arr[j]
```
以上代码中,arr代表要排序的列表,n代表列表的长度。在函数中使用两个循环嵌套来实现冒泡排序,外层循环控制遍历次数,内层循环控制相邻元素比较和交换。
阅读全文