C++编写main主函数,设整数型待排序数据用数组data存储,分别调用上述6个排序算法对数组data进行排序,输出每种排序算法每一趟的排序结果。
时间: 2024-12-20 22:25:03 浏览: 38
在C++中,要实现这个功能,首先你需要包含必要的头文件,并定义一个`main`函数。假设我们已经有了名为`bubbleSort`, `selectionSort`, `insertionSort`, `mergeSort`, `quickSort`, 和 `heapSort` 的排序算法函数。这里是一个简单的示例代码结构:
```cpp
#include <iostream>
#include <vector>
using namespace std;
// 假设你有这六个排序算法的实现
void bubbleSort(vector<int>& arr);
void selectionSort(vector<int>& arr);
void insertionSort(vector<int>& arr);
void mergeSort(vector<int>& arr);
void quickSort(vector<int>& arr);
void heapSort(vector<int>& arr);
int main() {
const int size = 10; // 可以根据需要调整数组大小
vector<int> data(size); // 存储整数型数据
// 初始化数组
for (int i = 0; i < size; ++i) {
data[i] = i + 1; // 示例:生成1到size的随机数
}
cout << "Original array:\n";
for (int num : data) {
cout << num << " ";
}
cout << endl;
// 对每个排序算法进行排序并打印中间过程
for (const auto& sort_func : {bubbleSort, selectionSort, insertionSort, mergeSort, quickSort, heapSort}) {
sort_func(data);
cout << "\nAfter " << sort_func == bubbleSort ? "Bubble Sort" :
sort_func == selectionSort ? "Selection Sort" :
sort_func == insertionSort ? "Insertion Sort" :
sort_func == mergeSort ? "Merge Sort" :
sort_func == quickSort ? "Quick Sort" :
"Heap Sort" << ": \n";
for (int num : data) {
cout << num << " ";
}
cout << endl;
}
return 0;
}
```
每次循环都会调用对应的排序算法并对数组进行排序,然后输出排序后的结果。请注意,实际代码中需要替换为你已经实现的排序算法函数。
阅读全文