a=[77,42,35,12,101,5]
for i in range(len(a)-1):
for j in range(len(a)-1-i):
if a[j]>a[j+1]:
a[j],a[j+1]=a[j+1],a[j]
print(a)
a=[77,42,35,12,101,5]
for i in range(len(a)-1):
flag=True#已经排序好或者中途排序好的数列,直接退出,提高效率
for j in range(len(a)-1-i):
if a[j]>a[j+1]:
a[j],a[j+1]=a[j+1],a[j]
flag=False
if flag==True:
break
print(a)
冒泡排序效率小于选择排序效率。
#将冒泡排序算法写成函数形式
def bubble_sort(a):
for i in range(len(a)-1):
for j in range(len(a)-1-i):
if a[j]>a[j+1]:
a[j],a[j+1]=a[j+1],a[j]
a=[77,42,35,12,101,5]
bubble_sort(a)
print(a)