c语言将数组元素,按“从小到大”选择排序
时间: 2024-09-15 11:15:26 浏览: 54
对数字型数组进行从小到大排序
5星 · 资源好评率100%
在C语言中,对数组元素进行"从小到大"的选择排序(Selection Sort)是一种简单的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。以下是选择排序的基本步骤:
1. **找到最小元素**:遍历整个数组,找出最小的元素并记录其索引。
2. **交换位置**:将找到的最小元素与数组的第一个元素交换,保证第一个元素是最小的。
3. **移除已排序部分**:从剩余未排序部分开始重复第一步和第二步,每次移动到下一个未排序部分的开头。
4. **重复直至排序完成**:当只剩最后一个元素时,整个数组就被认为是有序的。
这是一个伪代码示例:
```c
void selection_sort(int arr[], int n) {
for (int i = 0; i < n - 1; i++) { // 遍历所有数组元素
int min_index = i; // 初始化最小值索引
for (int j = i + 1; j < n; j++) { // 搜索未排序部分的最小值
if (arr[j] < arr[min_index]) {
min_index = j;
}
}
// 如果找到了更小的元素,就交换它们的位置
if (min_index != i) {
swap(&arr[i], &arr[min_index]);
}
}
}
```
阅读全文