氣泡排序:是一種穩定排序,在排序過程中可以監測到資料是否已經有序(對資料的有序性敏感),可以立即停止,如果待排序的資料基本有序,則冒泡的效率是非常高的。下面用c語言實現氣泡排序。
#include
#include
#define swap(a, b)
// 交換巨集函式,typeof用於獲取a的型別
void
bubble_sort
(int
* arr,
int len)
// 引數為待排序陣列的首位址,陣列的長度}if
(flag)
break
;// 如果一次完整的排序過程中沒有發生資料交換,標誌位flag就是true,意味著排序已經完成,所以退出迴圈即可
}}
氣泡排序 c語言實現
氣泡排序 排序思想 1.對於乙個長度為n的陣列,進行n 1次迴圈 2.第一次次迴圈中,先將1和2元素比較,如果元素1比元素2大,則交換其位置,接著比較元素2和元素3,以此類推,最終最大的元素排在最後一位 3.接著第二次迴圈,要排序的元素個數減少乙個 最大的已經放在最後一位 重複2的過程 4.這樣,每...
C語言實現氣泡排序
氣泡排序是一種簡單的排序演算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。氣泡排序演算法的運作如下 比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。對每一對相鄰元素作同樣的工作,從...
氣泡排序(C語言實現)
直接上 注意理解注釋 define crt secure no warnings 1 include include void my swap int a,int b 交換的時候傳位址 通過這兩個位址去尋找對應變數 void bubblesort int arr,int size 傳陣列名及其大小 ...