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)