1. 程式人生 > >python 冒泡算法

python 冒泡算法

位置 算法 int brush 升序 次循環 blog 數字 light

使用python進行冒泡算法對給定列表進行排序

其中需要註意的一點就是調換值的位置,位置調換不能通過索引直接賦值,需要引入一個臨時變量來完成

一下的例子是進行升序排序,如果需要進行降序排序,將其中的比較符‘>’換為‘<‘即可

li = [33,2,10,1,123,123,557,5,3422,13123,88]
print(li)                         #先打印一下需要排序的列表

for j in range(1,len(li)):        #控制循環次數

    for i in range(len(li)-1):    #每次循環,進行一次排序
        if li[i] > li[i + 1]:     #按列表中的索引對相鄰的兩個數字進行比較
            temp = li[i]          #將較大值賦值給一個臨時變量temp
            li[i] = li[i + 1]     #通過引入一個臨時變量的方法,調換值的位置
            li[i + 1] = temp
print(li)                         #打印最後的排序結果

 執行結果:

[33, 2, 10, 1, 123, 123, 557, 5, 3422, 13123, 88]
[1, 2, 5, 10, 33, 88, 123, 123, 557, 3422, 13123]

  

python 冒泡算法