首页 > 编程语言 > 详细

python实现快带排序

时间:2019-03-07 16:23:27      阅读:140      评论:0      收藏:0      [点我收藏+]

废话不说,直接上代码

 

#coding=utf-8


def qSort(alist, first, last):
if first >= last:
return

key = alist[first]
lo = first
hi = last

while lo < hi:
while lo < hi and key <= alist[hi]:
hi -= 1
alist[lo] = alist[hi]

while lo < hi and key > alist[lo]:
lo += 1
alist[hi] = alist[lo]

alist[lo] = key

qSort(alist, first, lo - 1)
qSort(alist, lo + 1, last)

if __name__=="__main__":
bb = [6, 1, 2, 7, 9, 3, 4, 5, 10, 8]
qSort(bb, 0, len(bb) - 1)
print(bb)

运行结果:

F:\dev\python\python.exe F:/pyCharm/pratice/sort_demo/quick_sort.py
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

Process finished with exit code 0

python实现快带排序

原文:https://www.cnblogs.com/linwenbin/p/10490093.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!