冒泡排序算法

冒泡排序的基本思想是依次比較相鄰的兩個數,將小數放在前面,大數放在後面。至第一次比較結束,則最大的數在數組最後。
第二趟時,仍從第一對數開始比較,將小數放前,大數放後,一直比較到倒數第二個數,第二趟結束,次大的數放在了數組次後的位置
重複下去,直到不再進行冒泡排序,即數組已爲有序數組
冒泡法並不是每趟比較最小的浮上來,而是最大的沉下去

C語言實現
void BubbleSort(int a[], int n) {
    int i,j;
    int flag;
    for(i=0; i<n-1; i++) {
        flag = 0;
         for(j=0; j<n-i; j++) {
            if(a[j] > a[j+1]) {
                int temp = a[j];
                a[j] = a[j+1];
                a[j+1] = temp;
                flag = 1;
            }
        }
        if(!flag) {
            break;
        }
    }
}

發佈了40 篇原創文章 · 獲贊 7 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章