演算法

  1. 比較相鄰的元素。如果第一個比第二個大,就交換他們兩個。

  2. 對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。這步做完後,最後的元素會是最大的數。

  3. 針對所有的元素重複以上的步驟,除了最後一個。

  4. 持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。

請使用 Python Tutor練習及研究程式數值變化

也可以使用https://replit.com/languages/python3 練習

氣泡排序法

def bubble_sorted(iterable):

new_list = list(iterable)

list_len = len(new_list)

for i in range(list_len):

for j in range(list_len - i - 1):

if new_list[j] > new_list[j + 1]:

new_list[j], new_list[j + 1] = new_list[j + 1], new_list[j]

return new_list

testlist = [27, 33, 28, 4, 2, 26, 13, 35, 8, 14]

print('sorted:', bubble_sorted(testlist))