如何用C++编写一个完整的程序,实现选择排序算法并包含名为`void mySelectionSort(int a[])`的子函数?
时间: 2024-12-08 15:20:50 浏览: 19
选择排序是一种简单的排序算法,它通过反复遍历数组找到最小元素,然后将其放到已排序部分的开头。下面是一个简单的C++程序,实现了选择排序,并包含`mySelectionSort`子函数:
```cpp
#include <iostream>
// 定义选择排序函数
void mySelectionSort(int a[], int n) {
for (int i = 0; i < n - 1; ++i) {
// 找到剩余未排序部分中的最小元素
int min_index = i;
for (int j = i + 1; j < n; ++j) {
if (a[j] < a[min_index]) {
min_index = j;
}
}
// 将找到的最小元素与当前位置交换
std::swap(a[i], a[min_index]);
}
}
int main() {
const int array_size = 5;
int arr[array_size] = {9, 4, 6, 1, 3};
std::cout << "Before sorting:\n";
for (int num : arr) {
std::cout << num << " ";
}
std::cout << "\n";
// 调用选择排序函数
mySelectionSort(arr, array_size);
std::cout << "After sorting:\n";
for (int num : arr) {
std::cout << num << " ";
}
std::cout << "\n";
return 0;
}
```
在这个程序中,`mySelectionSort`函数接受一个整数数组和它的大小作为参数,对数组进行排序。在`main`函数中,我们创建了一个示例数组,调用`mySelectionSort`对其进行排序,然后打印排序前后的结果。
阅读全文