我是靠谱客的博主 娇气香氛,这篇文章主要介绍选择排序(C语言实现),现在分享给大家,希望可以做个参考。

算法思想

从下标为0的位置开始,为每一个位置找到排序后应有的值,从该位置开始向后遍历数组,找到最小的值(不妨设排序为升序排列 ),放入该位置,接着为下一位置寻找该位置应有的值。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <stdio.h> #include <malloc.h> void Select_sort(int *a, int len); int main(void) { int i; int len; int * a; printf("请输入要排的数的个数:"); scanf("%d",&len); a = (int *)malloc(len * sizeof(int));//动态分配内存 printf("请输入要排的数:n"); for (i = 0; i < len; i++) { //要排的数的输入 scanf("%d",&a[i]); } Select_sort(a, len); printf("排序后的结果为:n"); for (i = 0; i < len; i++) { //排序后结果的输出 printf("%dt",a[i]); } printf("n"); return 0; } void Select_sort(int *a, int len)//选择排序 { int i; int j; int temp; int min_num; for (i = 0; i < len - 1; i++) { min_num = i; for (j = i + 1;j < len; j++) { if (a[j] < a[i]) { min_num = j; //存放当前最小值的下标 } } temp = a[i]; //交换两下标的值 a[i] = a[min_num]; a[min_num] = temp; } }

最后

以上就是娇气香氛最近收集整理的关于选择排序(C语言实现)的全部内容,更多相关选择排序(C语言实现)内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(73)

评论列表共有 0 条评论

立即
投稿
返回
顶部