用分治算法实现快速排序代码
时间: 2024-05-02 19:14:38 浏览: 99
分治算法实验(用分治法实现快速排序算法).docx
5星 · 资源好评率100%
快速排序是一种常用的排序算法,它通过分治的思想将一个大问题分解为多个小问题来解决。下面是用分治算法实现快速排序的代码:
```python
def quick_sort(arr):
if len(arr) <= 1:
return arr
pivot = arr[len(arr) // 2] # 选择中间元素作为基准值
left = [x for x in arr if x < pivot] # 小于基准值的元素放在左边
middle = [x for x in arr if x == pivot] # 等于基准值的元素放在中间
right = [x for x in arr if x > pivot] # 大于基准值的元素放在右边
return quick_sort(left) + middle + quick_sort(right) # 递归地对左右两部分进行快速排序
# 示例使用
arr = [5, 2, 9, 1, 7, 6, 3]
sorted_arr = quick_sort(arr)
print(sorted_arr)
```
阅读全文