Python编程题19--算法-冒泡排序
冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端。
def bubble_pop(s):
n=len(s)
for i in range(n-1):
for j in range(n-1-i):
if s[j]>s[j+1]:
s[j],s[j+1]=s[j+1],s[j]
if __name__ == '__main__':
arr = [54, 26, 93, 17, 77, 31, 44, 55, 20]
bubble_pop(arr)
print(arr)
而因为冒泡排序法 最后一个肯定已经知道大小 所以只需要排序到倒数第二个就可以了 这边只需要到n-1就可以
因为第一次轮训就已经轮训过 i 前面的内容了 所以不需要再继续轮训一次 i 为了减少复杂度 这边轮序只需要到 n-1-i
声明 欢迎转载,但请保留文章原始出处:) 博客园:https://www.cnblogs.com/chenxiaomeng/
如出现转载未声明 将追究法律责任~谢谢合作