用Python语言实现起泡排序和快速排序
时间: 2023-07-06 14:38:43 浏览: 104
基于python实现的快速排序程序源码
5星 · 资源好评率100%
好的,我可以为您提供Python语言实现起泡排序和快速排序的代码。
首先是起泡排序的代码实现:
```python
def bubble_sort(arr):
n = len(arr)
# Traverse through all array elements
for i in range(n):
# Last i elements are already in place
for j in range(0, n-i-1):
# traverse the array from 0 to n-i-1
# Swap if the element found is greater
# than the next element
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
```
接下来是快速排序的代码实现:
```python
def quick_sort(arr):
if len(arr) <= 1:
return arr
else:
pivot = arr[0]
left = []
right = []
for i in range(1, len(arr)):
if arr[i] < pivot:
left.append(arr[i])
else:
right.append(arr[i])
return quick_sort(left) + [pivot] + quick_sort(right)
```
这里提供了两种不同的实现方法,其中起泡排序使用嵌套循环来比较和交换元素的位置,而快速排序使用递归来分割和排序数组。请注意,这些实现仅适用于Python中的列表对象,如果您想在其他数据结构上运行这些算法,可能需要进行适当的修改。
阅读全文