选择排序C语言实现(源代码)
选择排序
对一个元素个数为20个的随机数组进行选择排序
#include <stdio.h>
#include <stdlib.h>
#include <time.h>void swap(int &a, int &b){int tmp = a;a = b;b = tmp;
}void Display(int *a, int n){for (register int i = 0; i < n; i++){printf("%d ", a[i]);}printf("\n");
}void select_sort(int *a, int n){register int i, j;int min;for (i = 0; i < n; i++) {min = i;//min记录的是下标for (j = i + 1; j < n; j++){if (a[j] < a[min]){min = j;//记录最小值的下标}}swap(a[min], a[i]);printf("第%d次选择排序:", i+1);Display(a, 20);}
}int main()
{int a[20];//生成一个有20个元素的随机数组srand((unsigned int)time(0));//修改种子for (register int i = 0; i < 20; i++){ a[i] = rand();}printf("原数组为:\n");Display(a, 20);printf("\n");select_sort(a, 20);printf("\n选择排序后:\n");Display(a, 20);return 0;
}
如有不足,欢迎各位大佬指正
选择排序C语言实现(源代码)相关推荐
- 简单选择排序(C语言)
数据结构总目录 简单选择排序 1. 图文解析 遍历序列,每次在当前位置向后扫描序列,记下最小值的位置,然后将最小值与当前位置的值交换 排序过程 序列:{ 5, 4, 3, 2, 1 } 从小到大排列 ...
- c语言选择排序_C语言——选择排序
1 选择排序(5分) 题目内容:编写选择排序,要求排序过程调用函数实现,在主函数输入n个数据,调用函数后,输出排好序的元素输入格式:输入整型数n,并输入n个整数,输入数据用空格隔开输出格式:输出排好序 ...
- 选择排序——C语言代码
介绍选择排序 下面是我在网上找的示例图,便于更好地理解选择排序 通过这个图我们明白K只是一个标记,它标记的是比较中 小的数.我们第一轮我们可以找到所有数中最小的数,然后让它和处于第一位的数进行位置交换 ...
- 简单选择排序——C语言实现
选择排序思想:若按照递增顺序对顺序表进行排列,在n个元素的顺序表中,从第i(i=1)个元素开始遍历到第n-1个元素,在遍历过程中都将第i个元素依次与第i+1到第n个元素进行比较,确定最小的元素,如果最 ...
- 选择排序 c语言(链表法)
目录 定义节点结构 选择排序思路 选择排序代码 VC 6.0 全代码+效果图 以升序为例 定义节点结构 typedef struct node{int data;struct node *next; ...
- 数组 选择排序 c语言
解法一: #include <stdio.h> #define NUM 10 int main() {int a[NUM],i,j,k,t;printf("请输入%d个数&quo ...
- 输入法按照选字频率排序的C语言程序算法,算法与数据结构之选择排序(C语言)...
#include #include void SelectSort(int *a,int n);//预声明要调用的函数 int main(void) { int k; int x[]={,,,,,,, ...
- c语言用sort函数选择排序,简单选择排序(Simple Selection Sort)的C语言实现
简单选择排序(Simple Selection Sort)的核心思想是每次选择无序序列最小的数放在有序序列最后 演示实例: C语言实现(编译器Dev-c++5.4.0,源代码后缀.cpp) 原创文章, ...
- C语言 | 选择排序
例83:C语言用选择排序对10个数进行排序. 解题思路:选择排序是指第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放 ...
最新文章
- 用代码创建工程并添加内容
- iBatis SqlMap的配置总结
- linux top 命令可视化_Linux top命令使用详解:显示或管理执行中的程序
- JAVA对象集合转化为xml转换_xml转为Map集合以及对象转化为xml
- G-华华对月月的忠诚
- How GPUs Work
- tree(2018.10.26)
- 三七互娱U3D面经2021.3.31
- 动态设置easyui datagrid URL
- HDU - 3391 Mahjong
- 实现审批系统_我市工程建设项目审批系统实现与 省监管平台数据互联互通
- div之间横竖方向的5px间距
- 定点运算之原码一位乘法
- jz2440裸机开发与分析:S3c2440ARM异常与中断体系详解8---定时器中断程序示例
- 微信小程序开发--习题
- 信号的平均功率与均方值
- android toast 自定义view,分享Android中Toast的自定义使用
- mysql 1236错误_mysql报1236错误代码该如何解决
- UE4 C++ UMG框架搭建
- matlab中如何分布运行,matlab安装、运行与其他问题集锦