温馨提示×

python快速排序代码怎么写

小亿
82
2024-03-04 15:04:36
栏目: 编程语言

快速排序是一种常见的排序算法,其思想是选取一个基准值,将数组分为两部分,一部分小于基准值,一部分大于基准值,然后递归对两部分数组进行排序。

下面是一个使用Python实现快速排序的代码示例:

def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    else:
        pivot = arr[0]
        less = [x for x in arr[1:] if x <= pivot]
        greater = [x for x in arr[1:] if x > pivot]
        return quick_sort(less) + [pivot] + quick_sort(greater)

# 测试示例
arr = [3, 6, 8, 10, 1, 2, 1]
sorted_arr = quick_sort(arr)
print(sorted_arr)

在这个示例中,我们定义了一个quick_sort函数来实现快速排序算法。首先判断数组的长度是否小于等于1,如果是的话直接返回数组。否则选取数组的第一个元素作为基准值pivot,然后使用列表解析式分别得到小于等于基准值和大于基准值的两个子数组lessgreater,最后递归对两个子数组进行排序,并将结果合并返回。

你可以将以上代码复制粘贴到Python的解释器中运行,测试快速排序算法的效果。

0