/*時間:2021年8月11日14:56:35 地點:中軟國際 功能:冒泡算法*/ #include<iostream> #include<ctime> #define SIZE 10 using namespace std; void BubbleSort(int* a, int len); int main() { int array[SIZE]; int i,j; srand(time(NULL)); for (i = 0; i < SIZE; i++) { array[i] = rand() / 1000+100;//初始化數組 } cout << "排序前的數組" << endl; for (i = 0; i < SIZE; i++) { cout << array[i]<<" "; } cout << endl; BubbleSort(array, SIZE); cout << "排序後的數組" << endl; for (j = 0; j < SIZE; j++) { cout << array[j] << " "; } return 0; } void BubbleSort(int* a, int len) { int i, j, k, temp; for (i = 0; i < len - 1; i++) { //從數組尾部開始比較 for (j = len - 1; j > i; j--) { //交換 if (a[j - 1] > a[j]) { temp = a[j - 1]; a[j - 1] = a[j]; a[j] = temp; } } cout << "第" << i << "步排序結果:";//輸出每步排序的結果 //輸出 for (k = 0; k < len; k++) { cout << a[k]<<" "; } cout << endl; } }