defBubble_sort(alist):
n =len(alist)-1for i inrange(n-1):for j inrange(0,n-i):if alist[j]> alist[j+1]:
alist[j],alist[j+1]= alist[j+1],alist[j]return alist
if __name__ =='__main__':
alist =[15,82,5,69,94,21,57,81,6]
Bubble_sort(alist)print(alist)>>[5,6,15,21,57,69,81,82,94]
选择排序
选择排序
循环n次,每次都把最头的数作为最小数,遍历后面的所有数,把更小的数的索引记录下来,交换到头部去,
defselect_sort(alist):
n =len(alist)for i inrange(n-1):
index = i
for j inrange(i+1,n):if alist[j]< alist[i]:
index = j
alist[index],alist[i]= alist[i],alist[index]return alist
if __name__ =='__main__':
alist =[15,82,5,69,94,21,57,81,6]
select_sort(alist)print(alist)>>[5,6,15,21,57,69,81,82,94]