c语言的数组选择排序
时间: 2023-11-12 22:07:34 浏览: 88
选择排序是一种简单直观的排序算法,它的基本思想是每次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。C语言实现选择排序的代码如下:
```c
void selection_sort(int arr[], int len) {
int i, j, min_idx;
for (i = 0; i < len - 1; i++) {
min_idx = i;
for (j = i + 1; j < len; j++) {
if (arr[j] < arr[min_idx]) {
min_idx = j; }
}
int temp = arr[min_idx];
arr[min_idx] = arr[i];
arr[i] = temp;
}
}
```
上述代码中,`arr`是待排序的数组,`len`是数组的长度。在选择排序中,我们需要找到未排序部分中的最小值,然后将其与未排序部分的第一个元素交换位置。这个过程需要重复执行`len-1`次,因为最后一个元素不需要再排序了。
阅读全文