一、快速排序
设定一个基准值pivot
将数组重新排列,所有比pivot小的放在其前面,比pivot大的放后面,这操作称为分区操作
对两边的数组重复前面两个步骤
二、画图演示
三、代码块
采用递归思想
def quickSort(nums):
n=len(nums)
if n<=1:
return nums
pivot=nums[0]
left=[]
right=[]
for i in range(1,n):
if nums[i]>pivot:
right.append(nums[i])
else:
left.append(nums[i])
print(left,pivot,right)
print('-----------------------------')
return quickSort(left)+[pivot]+quickSort(right)
test = [44, 12, 59, 36, 62, 43, 94, 7, 35, 52, 85]
test=quickSort(test)
print(test)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/74316.html