#-----------------------------冒泡排序--------------------------------defBubbleSort(data, reverse=False):'''
:param data: 需要排序数组
:param reverse: 是否逆序
:return: 排序完成的数组
'''
N =len(data)-1ifnot reverse:while N >1:for i inrange(N):if data[i]> data[i +1]:# 大的后移
data[i], data[i +1]= data[i +1], data[i]
N -=1return data
else:while N >1:for i inrange(N):if data[i]< data[i +1]:# 小的的后移
data[i], data[i +1]= data[i +1], data[i]
N -=1return data
#-----------------------------冒泡排序(优化)--------------------------defBubbleSort(data,reverse=False):'''
:param data: 需要排序数组
:param reverse: 是否逆序
:return: 排序完成的数组
'''
N =len(data)-1ifnot reverse:while N>1:
status =Truefor i inrange(N):if data[i]> data[i+1]:#大的后移
status =False
data[i],data[i+1]= data[i+1],data[i]if status:return data
N-=1return data
else:while N>1:
status =Truefor i inrange(N):if data[i]< data[i+1]:#小的的后移
status =False
data[i],data[i+1]= data[i+1],data[i]if status:return data
N-=1return data