c++利用递归思想,选择简单排序或冒泡排序,实现一组数据的递增排序
时间: 2023-11-21 13:04:32 浏览: 131
好的,以下是使用递归实现简单排序和冒泡排序的示例代码:
1. 简单排序
```c++
void simpleSort(int* arr, int size) {
if (size == 1) {
return;
}
for (int i = 0; i < size - 1; ++i) {
if (arr[i] > arr[i + 1]) {
int temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
}
simpleSort(arr, size - 1);
}
```
2. 冒泡排序
```c++
void bubbleSort(int* arr, int size) {
if (size == 1) {
return;
}
for (int i = 0; i < size - 1; ++i) {
if (arr[i] > arr[i + 1]) {
int temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
}
bubbleSort(arr, size - 1);
}
```
上述两个函数都接受一个整数数组和数组大小作为参数,使用递归的思想实现了简单排序和冒泡排序。简单排序每次都将最小的数移到数组的最前面,冒泡排序每次都将最大的数移到数组的最后面。这两种排序算法时间复杂度都是 $O(n^2)$,不过对于小规模的数据还是很实用的。
阅读全文