python实现快速排序算法。

简介: 【2月更文挑战第9天】【2月更文挑战第23篇】python实现快速排序算法。

快速排序(Quick Sort)是一种分治的排序算法。它会选择数组中的一个元素作为枢轴(pivot),然后将数组中所有其他元素与该枢轴元素进行比较,按照顺序将其放在枢轴的两边。
以下是使用 Python 实现快速排序的代码:

# 快速排序函数
def quickSort(arr, low, high):
    if low < high:
        # 找到枢轴的正确位置
        pi = partition(arr, low, high)
        # 对左右子数组分别进行递归排序
        quickSort(arr, low, pi - 1)
        quickSort(arr, pi + 1, high)

# 分治函数,用于确定枢轴的正确位置
def partition(arr, low, high):
    pivot = arr[high]
    i = (low - 1)

    for j in range(low, high):
        if arr[j] <= pivot:
            i += 1
            arr[i], arr[j] = arr[j], arr[i]

    arr[i + 1], arr[high] = arr[high], arr[i + 1]
    return (i + 1)

# 测试示例
arr = [10, 80, 30, 90, 40, 50, 70]
n = len(arr)

quickSort(arr, 0, n - 1)

print("排序后的数组:")
for item in arr:
    print(item)

这段代码实现了快速排序的程序,其平均时间复杂度为$O(nlogn)$,空间复杂度为$O(logn)$。在这段代码中,我们首先使用quickSort函数来递归地对数组进行排序。然后,partition函数用于确定枢轴的正确位置,并将比枢轴小的元素放在左边,比枢轴大的元素放在右边。最后,我们使用一个示例数组来测试快速排序算法,并输出排序后的结果。

希望这段代码能够帮助到你,如果你还有其他疑问,请随时向我提问。😄

相关文章
|
1月前
|
算法 搜索推荐 JavaScript
基于python智能推荐算法的全屋定制系统
本研究聚焦基于智能推荐算法的全屋定制平台网站设计,旨在解决消费者在个性化定制中面临的选择难题。通过整合Django、Vue、Python与MySQL等技术,构建集家装设计、材料推荐、家具搭配于一体的一站式智能服务平台,提升用户体验与行业数字化水平。
|
1月前
|
存储 监控 算法
监控电脑屏幕的帧数据检索 Python 语言算法
针对监控电脑屏幕场景,本文提出基于哈希表的帧数据高效检索方案。利用时间戳作键,实现O(1)级查询与去重,结合链式地址法支持多条件检索,并通过Python实现插入、查询、删除操作。测试表明,相较传统列表,检索速度提升80%以上,存储减少15%,具备高实时性与可扩展性,适用于大规模屏幕监控系统。
115 5
|
2月前
|
存储 算法 调度
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
185 26
|
2月前
|
机器学习/深度学习 算法 机器人
【机器人路径规划】基于D*算法的机器人路径规划(Python代码实现)
【机器人路径规划】基于D*算法的机器人路径规划(Python代码实现)
182 0
|
2月前
|
机器学习/深度学习 算法 机器人
【机器人路径规划】基于改进型A*算法的机器人路径规划(Python代码实现)
【机器人路径规划】基于改进型A*算法的机器人路径规划(Python代码实现)
217 0
|
2月前
|
机器学习/深度学习 编解码 算法
【机器人路径规划】基于迪杰斯特拉算法(Dijkstra)的机器人路径规划(Python代码实现)
【机器人路径规划】基于迪杰斯特拉算法(Dijkstra)的机器人路径规划(Python代码实现)
316 4
|
2月前
|
机器学习/深度学习 算法 机器人
【机器人路径规划】基于A*算法的机器人路径规划研究(Python代码实现)
【机器人路径规划】基于A*算法的机器人路径规划研究(Python代码实现)
443 4
|
2月前
|
机器学习/深度学习 算法 机器人
【机器人路径规划】基于深度优先搜索(Depth-First-Search,DFS)算法的机器人路径规划(Python代码实现)
【机器人路径规划】基于深度优先搜索(Depth-First-Search,DFS)算法的机器人路径规划(Python代码实现)
240 3
|
2月前
|
算法 机器人 定位技术
【机器人路径规划】基于流场寻路算法(Flow Field Pathfinding)的机器人路径规划(Python代码实现)
【机器人路径规划】基于流场寻路算法(Flow Field Pathfinding)的机器人路径规划(Python代码实现)
150 4
机器学习/深度学习 算法 自动驾驶
503 0

热门文章

最新文章

推荐镜像

更多