重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
def Bubble_Sort(lists):
# 冒泡排序
count = len(lists)
for i in range(count-1):
for j in range(icount-1-i):
if lists[j] > lists[j+1]:
lists[j], lists[j+1] = lists[j+1], lists[j]
return lists
if __name__ =="__main__":
print (Bubble_Sort([45,12,66,23,11,9,10]))
总比较次数=1+2+3+4+。。。。+n-1=n(n-1)/2=n^2/2-n/2
时间复杂度O(n^2)