采用快速排序算法将序列5 3 8 2 1 9 23 12 16由小到大排序,使用python代码
时间: 2024-12-13 11:26:53 浏览: 1
使用Java与Python实现十大排序算法之快速排序
快速排序是一种高效的排序算法,通过分治法的思想,选择一个基准元素,将数组分为两部分,一部分所有元素都小于基准,另一部分所有元素都大于基准,然后对这两部分再分别递归地进行快速排序。以下是使用Python实现的快速排序算法对给定序列进行从小到大排序:
```python
def quick_sort(arr):
if len(arr) <= 1:
return arr
pivot = arr[len(arr) // 2] # 选取中间元素作为基准
less = [x for x in arr if x < pivot] # 小于基准的元素
equal = [x for x in arr if x == pivot] # 等于基准的元素
greater = [x for x in arr if x > pivot] # 大于基准的元素
return quick_sort(less) + equal + quick_sort(greater)
# 应用到序列上
arr = [5, 3, 8, 2, 1, 9, 23, 12, 16]
sorted_arr = quick_sort(arr)
print("排序后的序列:", sorted_arr)
阅读全文