def quick_sort(data_list):
if len(data_list) >= 2:
length = int(len(data_list)/2)
middle_element = data_list[length]
left,right = [], []
data_list.remove(middle_element)
for num in data_list:
if num >= middle_element:
right.append(num)
else:
left.append(num)
return quick_sort(left) + [middle_element] + quick_sort(right)
else:
return data_list
快速排序的核心思想:
- 选择中间的数进行比较,比当前数大的元素放右边,小的放左边
- 将左右两边的数作为新的序列进行递归