Python 冒泡算法
时间: 2023-11-05 14:10:30 浏览: 83
Python算法之---冒泡,选择,插入排序算法.py
冒泡算法是一种排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就将它们交换过来,直到没有元素再需要交换,即为排序完成。
以下是 Python 冒泡算法的实现:
```python
def bubble_sort(arr):
n = len(arr)
# 遍历所有数组元素
for i in range(n):
# Last i elements are already in place
for j in range(0, n-i-1):
# 从 0 到 n-i-1 遍历数组
# 如果当前元素大于下一个元素,则交换它们的位置
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
```
在上述代码中,`bubble_sort` 函数接受一个数组作为参数,然后使用两个 `for` 循环来遍历数组中的所有元素。外部循环在每次迭代时将数组中的最后 `i` 个元素视为已排序的元素。内部循环从数组的第一个元素开始,比较相邻的元素,如果它们的顺序错误,就交换它们的位置。内部循环会一直遍历直到最后一个未排序的元素。最后,函数返回排序后的数组。
下面是一个使用冒泡排序算法对数组进行排序的示例:
```python
arr = [64, 34, 25, 12, 22, 11, 90]
sorted_arr = bubble_sort(arr)
print(sorted_arr)
```
输出结果为:
```
[11, 12, 22, 25, 34, 64, 90]
```
阅读全文