顶先最后推荐:哈哈,意思是放到顶部强调其重要性,但是应该我总结的六种算法看完了后再看的一篇醍醐灌顶的文章
一:冒泡排序(Bubble Sort)
原理:假设有n个数,第一轮时:从第一个元素开始,与相邻的元素比较,如果前面的元素小就交换,直到第n-1个元素时,这样的结果是将最大的元素放到了最后,同理,第二轮还是从第一个元素开始比较,直到第n-2个元素,这样能够把剩下的n-1个数中的最大的数放到第n-1的位置,一直这样进行n-1轮就能够完成排序。
1 def Bublesort(seq): 2 i = 0 3 j = 0 4 while i < len(seq): 5 while j < len(seq)-i-1: 6 if seq[j] > seq[j+1]: 7 seq[j],seq[j+1] = seq[j+1],seq[j] 8 else: 9 j+=1 10 j=0 11 i+=1 12 13 a=[3,4,6,2,1] 14 Bublesort(a) 15 print(a)