常見排序演算法之氣泡排序

2021-08-28 17:22:23 字數 682 閱讀 6758

氣泡排序(bubble sort),是一種較簡單的排序演算法。它重複地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果他們的順序(如從小到大、首字母從a到z)錯誤就把他們交換過來。

比較相鄰的元素。如果第乙個比第二個大(公升序),就交換他們兩個。

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

針對所有的元素重複以上的步驟,除了最後已選出的元素。

持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。(每迴圈一次從未排序元素中選出乙個最大者)

# j表示每次遍歷需要比較的次數,是逐漸減小的

for i in range(j):

if alist[i] > alist[i+1]:

alist[i], alist[i+1] = alist[i+1], alist[i]

li = [24,16,18,36,12,45,8]

bubble_sort(li)

print(li)

常見排序演算法之氣泡排序

1 首先,從第乙個元素開始,比較該元素與該元素相鄰的下乙個元素的大小 即第乙個元素與第二個元素的大小 如果該元素比較大則交換位置,否則不交換位置。2 按照1的步驟不斷重複的比較下一元素與其相鄰元素之間的大小,直到第n 1個元素,第一趟比較結束。例如 接下去是第二個元素,重複 1 的步驟,比較其與其相...

常見演算法之氣泡排序

氣泡排序由於其簡單,通常是我們學習各類程式語言首先選擇學習的乙個排序演算法。1 public class bubblesort 5 建立氣泡排序類的物件 6 bubblesort sorter new bubblesort 7 呼叫排序方法將陣列排序 8sorter.sort array 9 10 ...

常見排序演算法 氣泡排序 快速排序

常見排序演算法 選擇排序 直接選擇排序 堆排序 交換排序 氣泡排序 快速排序 插入排序 直接插入排序 折半插入排序 shell排序 歸併排序 桶式排序 基數排序 輸入 input 有0個或多個輸入資料,這些輸入必須有清楚的描述和定義 輸出 output 至少有1個或多個輸出結果,不可以沒有輸出結果 ...