选择排序

news/发布时间2024/5/19 16:57:59
/********************************************************************************************************
*
*	file name:	Zqh_选择排序.c
* 	author	 :	keyword2024@163.com
* 	date	 :	2024/05/05
* 	function   :    选择排序
*	note	:    算法
*	
*  Copyright (c)  2023-2024   keyword2024@163.com    All right Reserved
* ******************************************************************************************************/#include<stdio.h>
#include<stdlib.h>
/*
第一种形式的选择排序
选择排序后的顺序为从小到大
*/
void Select_Sort1(int *arr,int len)
{int i,j;for(i=0;i<len;i++)for(j=i+1;j<len;j++)if(arr[i] > arr[j]){int exchange = arr[i];arr[i] = arr[j];arr[j] = exchange;}
}/*
第二种形式的选择排序,减少了元素互换的操作
选择排序后的顺序为从小到大
*/
void Select_Sort2(int *arr,int len)
{int i,j,min;for(i=0;i<len;i++){min = i;	//用来记录每一趟比较的最小值的位置for(j=i+1;j<len;j++)if(arr[min] > arr[j])min = j;	 //仅记录最小值的位置//如果最小值的位置发生了变化,//则最后执行一次元素互换的操作if(min != i){int exchange = arr[i];arr[i] = arr[min];arr[min] = exchange;}}
}int main() 
{int num;printf("请输入排序的元素的个数:");scanf("%d",&num);int i;int *arr = (int *)malloc(num*sizeof(int));printf("请依次输入这%d个元素(必须为整数):",num);for(i=0;i<num;i++)scanf("%d",arr+i);printf("插入排序后的顺序:");Select_Sort2(arr,num);for(i=0;i<num;i++)printf("%d ",arr[i]);printf("\n");free(arr);arr = 0;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ulsteruni.cn/article/43774781.html

如若内容造成侵权/违法违规/事实不符,请联系编程大学网进行投诉反馈email:xxxxxxxx@qq.com,一经查实,立即删除!

相关文章

沟通技巧

第一步:搞定情绪 充分表达尊重,(不吝赞美,如何夸奖别人?从细节和对比可以发现) 夸人的时候不要太笼统,如:你穿的真好看和今天 上衣显的你很白,太美了。。 显然后面这一句显得更加的真诚 找不到细节就用对比,你穿的真好看,比一般人有气质多了。 对比找不到,就直接夸…

如何根据二叉树遍历结果快速绘制二叉树

一、已知前序遍历和中序遍历 (1)前序遍历(根结点--->左子树--->右子树) A B D G H C E I F (2)中序遍历(左子树--->根结点--->右子树) G D H B A E I C F注意:在最后连接二叉树时,注意先完玩左子树,再连右子树 二、已知前后序遍历和中序遍…

ctf_web

ctfshow web13 访问题目链接一看是一道文件上传题,上传文件进行测试 上传php会显示 error suffix 因此推测会检测格式 当文件字数超出一定字数时,显示 error file zise 常规操作就是访问 .php.bak 、.phps 、.swp等文件,看看有没有源码泄露 这道题访问 upload.php.bak 成功获…

02_Modbus的功能码与报文详解

Modbus协议类型 Modbus从站四张表类型 主站常用功能码 Modbus TCP请求报文,功能码03Modbus TCP应答报文,功能码03 00 17为23个字节:请求长度加应答长度06+17=23; 14为20长度:14+06=20Modbus UDP请求报文,功能码03Modbus UDP应答报文,功能码03 Modbus RTU请求报文,功能…

https加密机制

参考:https://www.cnblogs.com/sxiszero/p/11133747.html 对称加密:只用一个秘钥的加解密,如果秘钥进行了泄漏,导致数据不安全 非对称加密:非对称加密算法需要一组密钥对,分别是公钥和私钥,这两个密钥是成对出现的。公钥加密的内容需要对应的私钥解密,私钥加密的内容需…

Docker-DevOps-入门手册(全)

Docker DevOps 入门手册(全)原文:zh.annas-archive.org/md5/A074DB026A63DFD63D361454222593A5 译者:飞龙 协议:CC BY-NC-SA 4.0前言 Docker 与 DevOps 概述了容器化的强大力量以及这种创新对开发团队和一般运营的影响。我们还将了解 DevOps 的真正含义,涉及的原则,以及…