C++写一个简单排序算法

分析算法步骤: 1、暂定元素排列第0个为最小值,下标为min; 2、然后从左往右依次扫描,与min的关键字比较,若比min的更小,则更新min下标为当前下标; 3、并且把先前的最小值与当前找到目标的元素交换位置。

1#include<iostream> 2using namespace std; 3 4void Swap(int &a, int &b) 5{ 6 int temp = a; 7 a = b; 8 b = temp; 9} 10 11void SelectSort(int arr[],int n) 12{ 13 int i = 0, j = 0, min = 0; 14 for(i; i< n - 1; i++) 15 { 16 min = i; //1、 17 for(j = i + 1; j < n; j++) 18 { 19 if(arr[j] < arr[min]) 20 { 21 min = j; //2、 22 } 23 } 24 if(min != i) 25 { 26 Swap(arr[min], arr[i]); //3、 27 } 28 } 29} 30 31 32int main(void) 33{ 34 int arr[7] = {6,5,4,3,2,1,0}; 35 SelectSort(arr, 7); 36 int i = 0; 37 for(i; i < 7; i ++) 38 { 39 cout<<arr[i]; 40 } 41 return 0; 42} 43

接下来

1g++ -c seelcctSort.cpp
1g++ selectSort.o -o selectSort

把算法步骤写在上面分析,序号都对应在代码相应行了。 害,想来想去还是把主函数加上吧,居然时间长了不会写了。。。(猛男哭泣呜呜呜)

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

Opencv中Mat矩阵相乘——点乘、dot、mul运算详解

Opencv中Mat矩阵相乘——点乘、dot、mul运算详解2016年09月02日00:00:36 \牧野(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fme.csdn.net%2Fdcrmg) 阅读数:59593

KVM调整cpu和内存

一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid

Twitter的分布式自增ID算法snowflake (Java版)

概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移