用正序生成规模依次为10、100、1000、10000的数据进行冒泡排序用c++
时间: 2024-09-21 17:10:57 浏览: 34
在C++中,你可以使用嵌套循环来实现冒泡排序算法,针对不同规模的数据,例如10、100、1000和10000,你需要创建四个不同的数组,并对每个数组进行排序。下面是一个简单的示例代码片段:
```cpp
#include <iostream>
using namespace std;
void bubbleSort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) { // 如果当前元素大于下一个元素,交换它们
swap(arr[j], arr[j + 1]);
}
}
}
}
// 生成并打印指定规模的数据数组
void generateAndSort(int size) {
int arr[size];
// 填充随机数据
for (int i = 0; i < size; i++)
arr[i] = rand() % 10000 + 1; // 随机数生成
cout << "Sorted array of size " << size << ": ";
bubbleSort(arr, size);
for (int i : arr)
cout << i << " ";
cout << endl;
}
int main() {
// 对于不同的规模,分别调用函数
const int sizes[] = {10, 100, 1000, 10000};
for (int i = 0; i < sizeof(sizes) / sizeof(sizes[0]); i++) {
generateAndSort(sizes[i]);
}
return 0;
}
```
这个程序会生成并用冒泡排序算法对每种规模的数组进行排序,然后打印结果。注意,这只是一个基本的示例,实际应用中可能需要处理更复杂的情况,比如添加错误检查和性能优化。
阅读全文