class Sort_Algorithm(object):
# 快速排序(Quicksort)
def quick_sort(self,nums,left,right):
if left+1>=right:
return
first=left;last=right-1;key=nums[first]
while first=key:
last-=1
nums[first]=nums[last]
while first=right:
return
mid=left+(right-left)//2
self.merge_sort(nums,left,mid,temp)
self.merge_sort(nums,mid,right,temp)
p=left;q=mid;i=left
while p=right or (p0 and nums[j]
输出结果:
[0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9]
结合如下的网站学习,效果会更好
https://pythontutor.com/
https://visualgo.net/en



