网站制作学习网Python→正文:python快速排序算法
字体:

python快速排序算法

Python 2025/3/16 12:08:14  点击:不统计


 python实现快速排序,算法,快速排序 代码以及结果:
 
   def quick_sort(alist, start, end):
"""_快速排序

Args:
alist (_list_): _待排序的列表_
start (_int_): _起始位置_
end (_int_): _结束位置_
"""
if start >= end:
return
i= start
j = end
p = alist[i]
while i < j:
while j > i and alist[j] >= p:
print("1",i,j)
j -= 1
alist[i] = alist[j]
while i < j and alist[i] <= p:
print("2",i,j)
i += 1
alist[j] = alist[i]
alist[i] = p
quick_sort(alist, start, i - 1)
quick_sort(alist, i+1, end)

if __name__ == '__main__':
a = [5,1,3,7,4,8,9,2]
quick_sort(a,0,len(a)-1)
print(a)
   
 
输出结果:
2 0 7
2 1 7
2 2 7
1 3 7
1 3 6
1 3 5
2 3 4
1 0 3
1 0 2
2 0 1
1 2 3
2 5 7
1 6 7
[1, 2, 3, 4, 5, 7, 8, 9]

·上一篇:python修改pip源 >>    ·下一篇:ModuleNotFoundError: No module named 'distutils' >>
推荐文章
最新文章