一个简单的快排算法
- 使用快排的思想
- 空间复杂度很垃圾, 只是为了更好的理解快排算法
- TODO 修改成不需要额外空间的算法
def quicksort(data: list):
if len(data) <= 1:
return data
less = []
more = []
pivot = data[0]
for item in data:
if item < pivot:
less.append(item)
elif item > pivot:
more.append(item)
return quicksort(less) + [pivot] + quicksort(more)
data = [1, 4, 2, 6, 3, 10, 12, 11]
print(quicksort(data))