用C++写一段排序算法
时间: 2024-10-16 09:20:25 浏览: 19
排序算法之堆排序算法:用C++语言实现堆排序算法
当然,这里我给你介绍一种常见的排序算法,选择排序(Selection Sort)。这是一种简单直观的排序算法,其基本思想每次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。
```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, 8, 1, 9, 2};
int size = sizeof(data) / sizeof(data[0]);
std::cout << "Original array: ";
for (int num : data) {
std::cout << num << " ";
}
selectionSort(data, size);
std::cout << "\nSorted array: ";
for (int num : data) {
std::cout << num << " ";
}
return 0;
}
```
运行这段代码后,原始数组会被排序成升序。
阅读全文