data = [45,3,2,6,3,78,5,44,22,65,46]
def quickSort(data, start, end):
i = start
j = end
# i与j重合时,一次排序结束
if i >= j:
return
# 设置最左边的数为基准值
flag = data[start]
while i < j:
while i<j and data[j] >= flag:
j -= 1
# 找到右边第一个小于基准的数,赋值给左边i。此时左边i被记录在flag中
data[i] = data[j]
while i<j and data[i] <= flag:
i += 1
# 找到左边第一个大于基准的数,赋值给右边的j。右边的j的值和上面左边的i的值相同
data[j] = data[i]
# 由于循环以i结尾,循环完毕后把flag值放到i所在位置。
data[i] = flag
# 除去i之外两段递归
quickSort(data, start, i-1)
quickSort(data, i+1, end)
quickSort(data,0, len(data)-1)
print data快速排序python实现
最新推荐文章于 2025-10-10 13:29:31 发布
本文介绍了一种高效的排序算法——快速排序,并提供了详细的实现步骤及Python代码示例。通过对基准值的选择与交换操作,实现了对数组的有效划分,最终完成排序。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
Python3.11
Conda
Python
Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本
1195

被折叠的 条评论
为什么被折叠?



