初始化int类型数组data1[]={1,3,5,7,9,11,13,15,17,19,2,4,6,8,10,12,14,16,18,20}应用直接插入排序函数模板进行排序
时间: 2023-07-27 10:17:32 浏览: 79
好的,以下是使用直接插入排序函数模板对数组data1进行排序的代码:
```cpp
#include <iostream>
// 直接插入排序函数模板
template<typename T>
void insertionSort(T arr[], int len) {
for (int i = 1; i < len; i++) {
T temp = arr[i];
int j = i - 1;
while (j >= 0 && arr[j] > temp) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = temp;
}
}
int main() {
int data1[] = {1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20};
int len = sizeof(data1) / sizeof(int);
insertionSort(data1, len);
for (int i = 0; i < len; i++) {
std::cout << data1[i] << " ";
}
std::cout << std::endl;
return 0;
}
```
在上面的代码中,我们首先定义了一个直接插入排序的函数模板insertionSort。该函数接受一个数组和数组长度作为参数,使用直接插入排序算法对数组进行排序。然后在main函数中,我们声明了一个int类型数组data1,并使用sizeof运算符计算出数组的长度len。接着调用insertionSort函数对数组data1进行排序,最后输出排序后的结果。
阅读全文