快速排序是一种高效的排序算法,它采用分治法的思想进行排序。在 Python 中,我们可以使用以下代码实现快速排序算法:
def quick_sort(arr):
if len(arr) <= 1:
return arr
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)
arr = [5, 2, 8, 3, 9, 1]
sorted_arr = quick_sort(arr)
print(sorted_arr)
上述实现中,需首先判断数组的长度是否小于等于 1,如果是,则直接返回该数组。否则,我们选择数组的第一个元素作为枢轴(pivot),并将数组中比枢轴小的元素放入左边的列表中,将比枢轴大的元素放入右边的列表中。然后,递归地对左边的列表和右边的列表进行快速排序,并将它们和枢轴一起合并起来。最终得到的数组就是有序的。
文章出处登录后可见!
已经登录?立即刷新