defbubble_sort(li):for i inrange(len(li)-1):
flag =0for j inrange(len(li)- i -1):if li[j]> li[j+1]:
flag =1
li[j], li[j+1]= li[j+1], li[j]print(li)if flag ==0:break# test
li=[8,5,4,3,7,2,9]
bubble_sort(li)
选择排序
从列表中找出最小值,记录其位置,然后放在无序区的最前面
时间复杂度:O(
n
2
n^2
n2)
defselect_sort(li):for i inrange(len(li)-1):
index = i
for j inrange(i+1,len(li)):if li[j]< li[index]:
index = j
li[i], li[index]= li[index], li[i]print(list)# test
li=[8,5,4,3,7,2,9]
select_sort(li)