以下是一个基于递归的快速排序算法实现,该算法的时间复杂度为 O(nlogn),是一种高效的排序算法:

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)

该算法使用递归的方式将数组分成两部分:小于 pivot 的元素和大于等于 pivot 的元素。然后分别对这两部分进行排序,最后将排序后的两部分和 pivot 合并成一个有序数组。

Python 快速排序算法实现 - 详解及代码示例

原文地址: https://www.cveoy.top/t/topic/oYBp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录