python冒泡排序函数
时间: 2023-11-20 20:54:08 浏览: 33
这里我们使用自定义函数来完成冒泡排序:
```python
def bubble_Sort(arr):
for i in range(1, len(arr)):
for j in range(len(arr) - i):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
return arr
Array = [2, 11, 10, 5, 4, 13, 9, 7, 8, 1, 12, 3, 6, 15, 14]
print(bubble_Sort(Array))
```
以上代码实现了一个冒泡排序函数,输入一个列表,输出一个从小到大排序的列表。具体实现方法是通过比较相邻两个元素的大小,如果前一个元素比后一个元素大,则交换它们的位置,直到整个列表都被遍历一遍,这样最大的元素就会被排到最后。然后再对剩下的元素重复这个过程,直到整个列表都被排序完成。
相关问题
写一个python冒泡排序函数,用于对多个数组进行排序
好的,以下是一个冒泡排序函数,可以对多个数组进行排序:
```python
def bubble_sort(*arrays):
"""
冒泡排序函数,对多个数组进行排序
:param arrays: 多个数组,用*args形式传入
:return: 排序后的数组列表
"""
# 将所有数组拼接为一个大数组
combined_array = []
for array in arrays:
combined_array.extend(array)
# 冒泡排序
for i in range(len(combined_array)):
# 标记本轮是否有交换
swapped = False
for j in range(len(combined_array) - i - 1):
if combined_array[j] > combined_array[j + 1]:
# 交换数组中j和j+1位置的元素
combined_array[j], combined_array[j + 1] = combined_array[j + 1], combined_array[j]
swapped = True
# 如果本轮没有交换,说明已经排好序,可以提前退出循环
if not swapped:
break
# 将大数组按照元素个数分割成原来的数组形式
sorted_arrays = []
start = 0
for array in arrays:
end = start + len(array)
sorted_arrays.append(combined_array[start:end])
start = end
return sorted_arrays
```
这个函数接受多个数组作为参数,拼接成一个大数组之后调用冒泡排序算法进行排序。排序完成之后,按照数组原有的大小分割成多个数组返回。
使用示例:
```python
arr1 = [3, 5, 2, 4, 1]
arr2 = [9, 7, 8, 6, 10]
arr3 = [13, 16, 15, 11, 12, 14]
sorted_arr1, sorted_arr2, sorted_arr3 = bubble_sort(arr1, arr2, arr3)
print(sorted_arr1) # [1, 2, 3, 4, 5]
print(sorted_arr2) # [6, 7, 8, 9, 10]
print(sorted_arr3) # [11, 12, 13, 14, 15, 16]
```
冒泡排序函数调用python
冒泡排序函数的调用方式是通过导入冒泡排序函数并传入待排序的列表作为参数进行调用。在给定的代码中,冒泡排序函数名为bubble_sort,可以通过以下方式进行调用:
```python
from bubbleSort import bubble_sort
# 创建待排序的列表
iList = [5, 2, 8, 1, 3]
# 调用冒泡排序函数进行排序
sorted_list = bubble_sort(iList)
# 输出排序结果
print("排序后的列表:", sorted_list)
```