氣泡排序
實現思路
原理梳理:兩兩比較,每次都識別出陣列中最大的原則在最後乙個【這裡面最大和最小,一斤在行收或者行末都是可以調整的】
由於每一輪j比較完成,陣列中最大的數,已經在陣列的最後乙個元素了,所以在第二輪比較時,減去i是為了減少比較的次數,降低複雜度
最後輸出調整後的陣列結構
注:其中我們可以在每一次比較完成,或者每一輪j比較完成輸出陣列詳情,檢視比較的原理!
/*氣泡排序 bubblesort.c*/
#include #include int bubblesort(int *arr, int len)
/*檢視調整排序過程*/
// for(int i = 0;i<=len-1;i++)
// printf("\n");}}
}int bubblesort02(int *arr, int len)
/*檢視調整排序過程*/
// for(int i = 0;i<=len-1;i++)
// printf("\n");}}
}int main()
; int len = sizeof(arr)/sizeof(arr[0]);
/*輸出排序前的陣列*/
// for(int i = 0;i<=len-1;i++)
clock_t start01 = clock();
bubblesort(arr, len);
clock_t finish01 = clock();
printf("%fs.\n", (finish01-start01)/clocks_per_sec);
// 輸出排序後陣列
for(int i = 0;i<=len-1;i++)
return 0;
}
ps: c語言實現氣泡排序,其中的i意義理解! C 實現氣泡排序
include using namespace std define array size 8 the array size int main cout show the array void myshow int a,int length for unsigned int i 0 i執行結果 演算...
c 實現氣泡排序
氣泡排序 依次比較相鄰的資料,將小資料放在前,大資料放在後 即第一趟先比較第1個和第2個數,大數在後,小數在前,再比較第2個數與第3個數,大數在後,小數在前,以此類推則將最大的數 滾動 到最後乙個位置 第二趟則將次大的數滾動到倒數第二個位置.第n 1 n為無序資料的個數 趟即能完成排序。對氣泡排序演...
氣泡排序 c 實現
冒泡的演算法介紹 以公升序排列為例來說,大的數字不斷向後排,就像煮沸的水中的氣泡一直往上公升一樣。冒泡演算法它是通過不斷比較相鄰兩數的大小來將最大的數字排列到最後的。例如 4 2 3 1 4和1相比,4大就和2交換位置 變成2 4 3 1 j 4和3比較,4大就和3交換位置 變成 2 3 4 1 j...