所謂冒泡,就是將元素兩兩之間進行比較,誰大就往後移動,直到將最大的元素排到最後面,接著再迴圈一趟,從頭開始進行兩兩比較,而上一趟已經排好的那個元素就不用進行比較了。 冒泡排序的思想: 每次比較兩個相鄰的元素, 如果他們的順序錯誤就把他們交換位置。 冒泡排序原理: 每一趟只能將一個數歸位, 如果有n個 ...
所謂冒泡,就是將元素兩兩之間進行比較,誰大就往後移動,直到將最大的元素排到最後面,接著再迴圈一趟,從頭開始進行兩兩比較,而上一趟已經排好的那個元素就不用進行比較了。
冒泡排序的思想: 每次比較兩個相鄰的元素, 如果他們的順序錯誤就把他們交換位置。
冒泡排序原理: 每一趟只能將一個數歸位, 如果有n個數進行排序,只需將n-1個數歸位, 也就是說要進行n-1趟操作(已經歸位的數不用再比較)。
缺點: 冒泡排序解決了桶排序浪費空間的問題, 但是冒泡排序的效率特別低
python冒泡排序的代碼實現
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 4 li = [33, 4, 15, 1, 456, 75, 45, 30, 20, 78, 99, 100, 67, 23, 10, 7] 5 print("排序前:", li) 6 for j in range(1, len(li)): 7 for i in range(len(li) - j): 8 if li[i] > li[i + 1]: 9 temp = li[i] 10 li[i] = li[i + 1] 11 li[i + 1] = temp 12 print("排序後:", li)View Code