python写冒泡排序
时间: 2023-09-22 22:05:04 浏览: 55
以下是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], end=" ")
```
输出结果:
```
排序后的数组:
11 12 22 25 34 64 90
```
在上述代码中,我们首先定义了一个bubble_sort()函数,该函数输入一个列表arr并对其进行冒泡排序。我们使用两个for循环来实现冒泡排序,其中第一个循环从0到n-1进行迭代,表示我们需要执行n次冒泡排序。第二个循环从0到n-i-1进行迭代,表示我们只需要比较未排序部分的元素。在每一次迭代中,我们比较相邻的元素,如果顺序不正确,则交换它们的位置。在排序完成后,我们使用for循环来打印排序后的数组。
相关问题
Python写冒泡排序
当然可以,以下是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])
```
这段代码可以对一个整数数组进行冒泡排序。
用Python写冒泡排序
好的,下面是 Python 写的冒泡排序的例子:
```
def bubble_sort(lst):
n = len(lst)
for i in range(n-1): # 比较n-1轮
for j in range(n-1-i): # 每轮比较n-1-i次
if lst[j] > lst[j+1]: # 如果当前元素比后一个大,就交换它们的位置
lst[j], lst[j+1] = lst[j+1], lst[j]
return lst
print(bubble_sort([3, 4, 2, 1])) # [1, 2, 3, 4]
```
冒泡排序的时间复杂度为 O(n^2),是一种比较慢的排序算法。如果你的数据规模较大,可能需要使用更快的排序算法。
阅读全文