编写冒泡排序的函数模版,并进行测试。
时间: 2024-03-07 08:48:12 浏览: 67
C语言程序设计-编写函数用冒泡排序法对数组中的数据进行从小到大的排序;.c
5星 · 资源好评率100%
好的,以下是冒泡排序的函数模板的实现:
```cpp
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;
}
}
}
}
```
其中,`arr` 表示待排序的数组,`n` 表示数组的长度。函数模板中的 `typename T` 表示泛型类型,可以用于排序任意类型的数组。
下面是一个测试用例:
```cpp
int main() {
int arr[] = { 3, 2, 1, 5, 4 };
int n = sizeof(arr) / sizeof(int);
bubbleSort(arr, n);
for (int i = 0; i < n; i++) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果为:
```
1 2 3 4 5
```
可以看到,经过冒泡排序后,数组已经被正确排序。
阅读全文