快速排序是一种高效的排序算法,它采用分治法的思想进行排序。在 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),并将数组中比枢轴小的元素放入左边的列表中,将比枢轴大的元素放入右边的列表中。然后,递归地对左边的列表和右边的列表进行快速排序,并将它们和枢轴一起合并起来。最终得到的数组就是有序的。
来源地址:https://blog.csdn.net/m0_59649695/article/details/130832437