Python之冒泡排序

Posted 小张学Python

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python之冒泡排序相关的知识,希望对你有一定的参考价值。

给出一个纯数字列表. 请对列表进行排序。
列表为
lst = [7,9,6,3,8,4,2,5,1,0,435,345,123,567,457,456,678,]
此时用到一个知识点:
a,b=b,a
lst = [7,9,6,3,8,4,2,5,1,0,435,345,123,567,457,456,678,]
lst2=[]
for i in range(len(lst)):
    for j in range(len(lst)-1):
        if lst[j]>lst[j+1]:
            lst[j],lst[j+1]=lst[j+1],lst[j]
print(lst)

  结果为:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 123, 345, 435, 456, 457, 567, 678]

此时程序还可以优化,不用循环这么多次:

如下:

技术分享图片
for i in range(len(lst)-1):
    for j in range(len(lst) - 1 - i):
        if lst[j]>lst[j + 1]:
            lst[j], lst[j + 1]= lst[j + 1], lst[j]
print(lst)
View Code

 




以上是关于Python之冒泡排序的主要内容,如果未能解决你的问题,请参考以下文章

Python之冒泡排序

Python之冒泡排序算法

python第十四课--排序及自定义函数之案例二:冒泡排序

11.python排序算法之冒泡排序简单选择排序,二元选择排序直接插入排序

python 数据结构与算法之排序(冒泡,选择,插入)

Python十大经典算法之冒泡排序