快速排序算法python实现

快速排序

快速排序是一种递归调用的方法,思想是根据一个基准值,将数组比基准值小的放在左边,比基准值大的放在右边。运用了分而治之的思想,最后将三部份合并即可得到最终的有序数组
代码实现:

def quickSort(arr):
if len(arr) < 2:
    return arr
leftarr = []
rightarr = []
item = arr[0]
for i in range(1,len(arr)):
    if arr[i] <= item:
        leftarr.append(arr[i])
    else:
        rightarr.append(arr[i])
return quickSort(leftarr) + [item] + quickSort(rightarr)

代码验证:

list_test = [3,5,10,2,1,7,6,8]
print(quickSort(list_test))
list_test = [3,0,10,-1,1,7,6,100,20,31]
print(quickSort(list_test))

你可能感兴趣的:(算法)