C语言选择排序法怎么实现
导读:选择排序法(Selection Sort)是一种简单直观的排序算法,它的基本思想是每次从未排序的元素中选择最小(或最大)的元素,放到已排序的末尾。具体实现如下: #include <stdio.h> void selectio...
选择排序法(Selection Sort)是一种简单直观的排序算法,它的基本思想是每次从未排序的元素中选择最小(或最大)的元素,放到已排序的末尾。具体实现如下:
#include <
stdio.h>
void selectionSort(int arr[], int n) {
int i, j, minIndex, temp;
for (i = 0;
i <
n-1;
i++) {
minIndex = i;
for (j = i+1;
j <
n;
j++) {
if (arr[j] <
arr[minIndex]) {
minIndex = j;
}
}
// 交换最小元素到已排序的末尾
temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}
int main() {
int arr[] = {
64, 34, 25, 12, 22, 11, 90}
;
int n = sizeof(arr) / sizeof(arr[0]);
int i;
printf("Original array: ");
for (i = 0;
i <
n;
i++) {
printf("%d ", arr[i]);
}
printf("\n");
selectionSort(arr, n);
printf("Sorted array: ");
for (i = 0;
i <
n;
i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
运行以上代码,输出为:
Original array: 64 34 25 12 22 11 90
Sorted array: 11 12 22 25 34 64 90
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: C语言选择排序法怎么实现
本文地址: https://pptw.com/jishu/682066.html