C++模板实现通用冒泡排序算法

冒泡排序算法是一种简单的排序算法,通过多次遍历来逐步将数据排序。以下是使用C++编写的函数模板,适用于多种数据类型,如int、float、double等。```cpp

template

void bubbleSort(T arr[], int n) {

for (int i = 0; i < n>

for (int j = 0; j < n>

if (arr[j] > arr[j + 1]) {

std::swap(arr[j], arr[j + 1]);

}

}

}

}


**代码解析**:
1. `template ` 声明了一个通用模板类型`T`,使函数可以应用于多种数据类型。
2. **外层循环**遍历所有元素,每轮将最大的元素移动到右侧。
3. **内层循环**比较相邻元素,若顺序不正确,则交换它们的位置。
4. `std::swap`交换两个元素,确保数组最终有序。

**用法示例**:
```cpp int arr[] = {5, 3, 8, 4, 2}; int n = sizeof(arr) / sizeof(arr[0]); bubbleSort(arr, n);

docx 文件大小:14.28KB