python中的算法1-冒泡排序

冒泡排序也是一种简单直观的排序算法。它重复地循环要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会慢慢的浮动到数列的开头。
比如有一个数列

li=[1,9,4,7,7,8,2,3,5,8,13,10,11,18,25,55,88,22]

这个数列可以先进行循环,取出所有元素,然后两两比较大小

li=[1,9,4,7,7,8,2,3,5,8,13,10,11,18,25,55,88,22]
s=len(li)  #为了方便,先给列表的长度进行赋值
for i in range(s): #循环遍历列表
    for k in range(0,s-1-i):
        if li[k]>li[k+1]: #两两比较
            li[k+1],li[k] =li[k],li[k+1]  #赋值
print(li)
可以看到最后的结果,会按照从小到大的顺序排列,当然也可以按照从大到小的顺序排列
[1, 2, 3, 4, 5, 7, 7, 8, 8, 9, 10, 11, 13, 18, 22, 25, 55, 88]

原文参考](https://www.runoob.com/python3/python-bubble-sort.html)

猜你喜欢

转载自blog.csdn.net/lemeifei/article/details/121033345