Python之氣泡排序

2022-09-15 12:06:09 字數 692 閱讀 5970

給出乙個純數字列表. 請對列表進行排序。

列表為

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之氣泡排序

氣泡排序 bubble sort 是一種簡單的 非常低效的排序演算法。氣泡排序依次地走訪要排序的數列,一次比較兩個元素,如果他們的順序錯誤 如從大到小 首字母從a到z 就把他們交換位置,直到沒有相鄰元素需要交換,即該數列已經排序完成。這個演算法名字的由來是因為越大的元素會經由交換慢慢 浮 到數列的頂...

Python之氣泡排序

氣泡排序 演算法簡介 氣泡排序是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個演算法的名字由來是因為越小的元素會經由交換慢慢 浮 到數列的頂端。6.2時間複雜度與空...

Python之氣泡排序

1 先看氣泡排序的原理 一 氣泡排序簡介 氣泡排序 bubble sort 是一種常見的排序演算法,相對來說比較簡單。氣泡排序重複地走訪需要排序的元素列表,依次比較兩個相鄰的元素,如果順序 如從大到小或從小到大 錯誤就交換它們的位置。重複地進行直到沒有相鄰的元素需要交換,則元素列表排序完成。在氣泡排...