注:参考YC的技术笔记,包括冒泡、选择、插入、希尔、归并、快速排序6种排序算法。
def bubble_sort(arr):
for i in range(len(arr)):
flag = True
for j in range(1,len(arr)-i):
if arr[j-1] > arr[j]:
arr[j-1], arr[j] = arr[j], arr[j-1]
flag = False
if flag:
return arr
return arr
def selection_sort(arr):
for i in range(len(arr)):
min_i = i
for j in range(i+1, len(arr)):
if arr[j] < arr[min_i]:
min_i = j
arr[i], arr[min_i] = arr[min_i], arr[i]
return arr
def insert_sort(arr