编写c++程序,编程实现直接选择排序,并在主函数中进行测试
时间: 2025-02-10 20:11:25 浏览: 33
在C++中,直接选择排序是一种简单的排序算法,其基本思想是在未排序序列中找到最小(或最大)元素,存放到序列的起始位置,然后每次从剩余未排序部分中继续寻找并放置最小(或最大)元素,直到全部排序完成。下面是C++中直接选择排序的一个简单实现:
```cpp
#include <iostream>
// 定义选择排序函数
void selectionSort(int arr[], int n) {
for (int i = 0; i < n - 1; ++i) {
// 找到未排序部分中的最小元素
int minIndex = i;
for (int j = i + 1; j < n; ++j) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
// 将找到的最小元素与当前未排序部分的第一个元素交换
std::swap(arr[i], arr[minIndex]);
}
}
int main() {
int data[] = {5, 3, 8, 6, 1, 9, 2, 7, 4};
int size = sizeof(data) / sizeof(data[0]);
std::cout << "Original array: ";
for (int i : data) {
std::cout << i << " ";
}
std::cout << "\n";
selectionSort(data, size);
std::cout << "Sorted array: ";
for (int i : data) {
std::cout << i << " ";
}
stdcout << "\n";
return 0;
}
```
在这个例子中,`selectionSort` 函数接收一个整数数组和它的长度作为参数,对数组进行排序。`main` 函数则创建了一个示例数组,调用排序函数并将结果打印出来。
阅读全文
相关推荐


















