# 冒泡
# 复杂度n^2
def BubbleSort(array):
length = len(array)
for i in range(length):
for j in range(length-i-1):
if array[j] > array[j+1]: array[j+1], array[j] = array[j], array[j+1]
return array
# 快排
def quick_sort(b):
"""快速排序"""
if len(b) < 2:
return arr
# 选取基准,随便选哪个都可以,选中间的便于理解
mid = arr[len(b) // 2]
# 定义基准值左右两个数列
left, right = [], []
# 从原始数组中移除基准值
b.remove(mid)
for item in b:
# 大于基准值放右边
if item >= mid:
right.append(item)
else:
# 小于基准值放左边
left.append(item)
# 使用迭代进行比较
return quick_sort(left) + [mid] + quick_sort(right)
堆排序
# 桶排序