小雷撸代码,恶补…
改进的冒泡排序:如果某次扫描没有遇到逆序,则说明序列已排好。
def bubble_sort(arry):
for i in range(len(arry)-1):
found = False
for j in range(1, len(arry)-i):#range()取值含左不含右
if arry[j-1] > arry[j]:
arry[j - 1], arry[j] = arry[j], arry[j - 1]
found = True#有逆序则置为Ture
if not found:#如果一次扫描没有逆序,则说明此序列为正序,直接输出序列
break#continue语句跳出本次循环,而break跳出整个for循环
return arry
#a = [6,5,4,3,2,1]
a = [1,2,3,4,5,6]
a = bubble_sort(a)
print(a)