用c++类模板编写冒泡排序
时间: 2023-03-20 11:03:51 浏览: 128
Sort_Template.rar_The Class
好的,以下是使用C++模板编写冒泡排序的示例代码:
```c++
#include <iostream>
#include <vector>
using namespace std;
template<typename T>
void bubble_sort(vector<T>& arr) {
int n = arr.size();
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]);
}
}
}
}
int main() {
vector<int> arr = {5, 2, 8, 1, 9};
bubble_sort(arr);
for(int num : arr) {
cout << num << " ";
}
return 0;
}
```
这段代码中,我们定义了一个模板函数`bubble_sort`,接受一个模板参数`T`,并对一个`vector`类型的数组进行冒泡排序。在排序过程中,我们比较相邻的元素,如果顺序不对则进行交换,直到数组被完全排序。最后,我们在`main`函数中定义了一个整型数组并进行排序,然后输出排好序的结果。
阅读全文