您的位置:首页 > 编程语言 > Python开发

Python3之快速排序

2018-01-27 09:23 232 查看
def quickSort(List, left, right):
if left >= right:  # 如果只有一个数字时,结束递归
return
flag = left
for i in range(left + 1, right + 1):  # 默认以第一个数字作为基准数,从第二个数开始比较,生成索引时要注意右部的值
if List[i] < List[flag]:
tmp = List[i]
del List[i]
List.insert(flag, tmp)
flag += 1
quickSort(List, left, flag - 1)  # 将基准数前后部分分别递归排序
quickSort(List, flag + 1, right)

List = [1, -2, 4, 7, 6, 3, 2, 3]
quickSort(List, 0, 7)
print(List)


网上看的快排,简单易懂,感兴趣的可以研究一下~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  快排