c语言中的选择排序法怎么用
在 C 语言中,可以使用选择排序算法对一个数组进行排序。选择排序的基本思想是每次从未排序部分选择最小(或最大)的元素,并将其放置在已排序部分的末尾。
下面是使用选择排序算法对一个整数数组进行排序的示例代码:
#include <stdio.h> void selectionSort(int arr[], int n) { int i, j, min_idx, temp; // 遍历整个数组 for (i = 0; i < n - 1; i++) { // 找到未排序部分的最小元素位置 min_idx = i; for (j = i + 1; j < n; j++) { if (arr[j] < arr[min_idx]) min_idx = j; } // 将最小元素与当前位置交换 temp = arr[i]; arr[i] = arr[min_idx]; arr[min_idx] = temp; } } int main() { int arr[] = {64, 25, 12, 22, 11}; int n = sizeof(arr) / sizeof(arr[0]); int i; printf("原始数组:"); for (i = 0; i < n; i++) printf("%d ", arr[i]); selectionSort(arr, n); printf("\n排序后的数组:"); for (i = 0; i < n; i++) printf("%d ", arr[i]); return 0; }
在上述代码中,`selectionSort()` 函数用于实现选择排序算法。`main()` 函数中创建了一个整数数组 `arr`,并计算出数组的长度 `n`。然后,原始数组被输出,并调用 `selectionSort()` 函数对数组进行排序。最后,排序后的数组被输出。
以上代码将输出:
原始数组:64 25 12 22 11 排序后的数组:11 12 22 25 64
这就是使用选择排序算法在 C 语言中对一个数组进行排序的示例。
阅读剩余
THE END