import random,math
#下面这个函数用于生产一个随机数组,非必要
def random_int_list(start, stop, length):
start, stop = (int(start), int(stop)) if start <= stop else (int(stop), int(start))
length = int(abs(length)) if length else 0
random_list = []
for i in range(length):
random_list.append(random.randint(start, stop))
return random_list
def fun(list,left,right):
if right==left:
return list
old_left = left
old_right = right
a = list[left]
while left < right:
while list[right]<a:
while list[left]>a:
value = list[left]
list[left] = list[right]
list[right] = value
left = left + 1
if left == right:
list[old_left] = list[left]
list[left] = a
right = right - 1
fun(list,old_left,left)
fun(list,right+1,old_right)
return list
list = random_int_list(0,1000,10000)
print('old_list:%s'%list)
print('new_list:%s'%fun(list,0,len(list)-1))
快速排序
排序