编写一个模板方法完成数组的冒泡排序数组元素的数据类型可以是任意类型用cpp编写的简单一点包含主函数
以下是一个使用模板方法完成数组冒泡排序的示例代码,包含主函数:
#include <iostream>
template<typename T>
void bubbleSort(T 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]) {
T temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
int main() {
int intArr[] = {5, 3, 8, 1, 2, 7, 4, 6};
int n = sizeof(intArr) / sizeof(int);
std::cout << "Before sorting: ";
for (int i = 0; i < n; i++) {
std::cout << intArr[i] << " ";
}
std::cout << std::endl;
bubbleSort(intArr, n);
std::cout << "After sorting: ";
for (int i = 0; i < n; i++) {
std::cout << intArr[i] << " ";
}
std::cout << std::endl;
double doubleArr[] = {3.14, 2.71, 1.414, 1.732, 1.618};
n = sizeof(doubleArr) / sizeof(double);
std::cout << "Before sorting: ";
for (int i = 0; i < n; i++) {
std::cout << doubleArr[i] << " ";
}
std::cout << std::endl;
bubbleSort(doubleArr, n);
std::cout << "After sorting: ";
for (int i = 0; i < n; i++) {
std::cout << doubleArr[i] << " ";
}
std::cout << std::endl;
return 0;
}
输出结果为:
Before sorting: 5 3 8 1 2 7 4 6
After sorting: 1 2 3 4 5 6 7 8
Before sorting: 3.14 2.71 1.414 1.732 1.618
After sorting: 1.414 1.618 1.732 2.71 3.14
``
原文地址: https://www.cveoy.top/t/topic/cOXq 著作权归作者所有。请勿转载和采集!