使用python写冒泡排序法
时间: 2023-09-20 14:05:15 浏览: 117
### 回答1:
好的,下面是用 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[
### 回答2:
冒泡排序是一种简单的排序算法,在Python中可以用以下代码实现:
```python
def bubble_sort(arr):
n = len(arr)
for i in range(n): # 外层循环控制比较的次数,共需要比较n-1次
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是待排序的列表。首先,使用len()函数获取列表的长度n,然后进行外层循环,循环次数为n-1,表示需要比较n-1次。在内层循环中,使用range()函数进行相邻元素的比较。如果前一个元素大于后一个元素,则交换位置。通过重复进行外层和内层循环,直到所有元素都按照从小到大的顺序排列。
以下是使用冒泡排序算法对一个列表进行排序的示例:
```python
my_list = [5, 3, 8, 1, 2]
bubble_sort(my_list)
print(my_list) # 输出:[1, 2, 3, 5, 8]
```
这段代码首先定义一个包含整数的列表my_list,然后调用bubble_sort函数对该列表进行排序。排序完成后,使用print语句输出排序结果。
### 回答3:
冒泡排序是一种简单的排序算法,通过多次遍历数组,比较相邻元素的大小,将较大(或较小)的元素逐步交换到最后的位置,从而实现排序。下面是使用Python编写冒泡排序的代码示例:
```python
def bubble_sort(arr):
n = len(arr)
for i in range(n-1):
for j in range(n-1-i):
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)
```
首先定义了一个 `bubble_sort` 函数,该函数接受一个数组 `arr` 作为参数。然后使用两个嵌套循环进行遍历,外层循环 `i` 用于控制遍历的次数,内层循环 `j` 用于比较相邻元素的大小。如果当前元素 `arr[j]` 大于下一个元素 `arr[j+1]`,则交换它们的位置。通过多次遍历和交换,将最大的元素逐步交换到最后的位置。最后返回排序后的数组。
以上代码示例的输出结果为:`[11, 12, 22, 25, 34, 64, 90]`。即将原始数组 `[64, 34, 25, 12, 22, 11, 90]` 进行冒泡排序后得到的有序数组。
阅读全文