题目描述

输入nn个整数,用选择排序算法将这nn个数从小到大进行排序。n \leq 1000n≤1000.

输入格式

第一行,输入整数nn. 第二行,输入这nn个整数

输出格式

一行,按从小到大输出这nn个数

输入样例

10

2 3 4 1 3 6 7 4 9 8

输出样例

1 2 3 3 4 4 6 7 8 9

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn=10001;
int a[maxn];
void s(int a[],int n){
    for(int i=1;i<n;i++){
        int ith=i;
        for(int j = i+1;j <= n;j++){
            if(a[j]<a[ith]){
                ith=j;
            }
        }
        int t=a[i];
        a[i]=a[ith];
        a[ith]=t;
    }          
}
void st(int a[],int n){
    for(int i=1;i<n;i++){
        int k=a[i];
        int j=i-1;
        while(j >= 1 && a[j]>k){
            a[j+1]=a[j];
            j--;
        }
        a[j+1]=k;
    }      
    
}
int main()
{
    int n;
    cin>>n;
    for(int i = 1;i<=n;i++)cin>>a[i];
    s(a,n);
    for(int i = 1;i<=n;i++)cout<<a[i]<<" ";
    return 0;
}

好了,这个系列完结下期继续!

C++打卡17-【排序模板】选择排序相关推荐

  1. 选择排序—简单选择排序(Simple Selection Sort)

    基本思想: 在要排序的一组数中,选出最小(或者最大)的一个数与第1个位置的数交换:然后在剩下的数当中再找最小(或者最大)的与第2个位置的数交换,依次类推,直到第n-1个元素(倒数第二个数)和第n个元素 ...

  2. C语言排序算法 选择排序 插入排序 快速排序 qsort实现快排 堆排序

    常见排序算法 选择排序 选择排序(Selection sort)是一种简单直观的排序算法. 它的工作原理如下. 首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素 ...

  3. 排序算法---选择排序(java版)

    简单选择排序 原理 选择排序(Selection Sort)的原理有点类似插入排序,也分已排序区间和未排序区间.但是选择排序每次会从排序区间中找到最小的元素,将其放到已排序区间的末尾. 简单选择排序执 ...

  4. C语言基础排序算法-选择排序

    C语言基础排序算法-选择排序 什么是选择排序? 选择排序(Selection sort)是一种简单直观的排序算法,第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从 ...

  5. 数据结构—排序算法总结(插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、合并排序、计数排序)

    *排序 所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作. 稳定性 在待排序的数组中,如果出现多个相同的关键字,例如:98751555512,中出现重复的数字,在 ...

  6. 【02】Java进阶:09-冒泡排序、选择排序、二分查找、异常、异常的产生和处理、自定义异常、多线程

    day09[排序算法.异常.多线程基础] 今日内容 冒泡排序 选择排序 二分查找 异常处理 多线程基础 教学目标 能够理解冒泡排序的执行原理 能够理解选择排序的执行原理 能够理解二分查找的执行原理 能 ...

  7. 排序算法(分类,时间复杂度)(快速排序,插入排序,希尔排序,选择排序,冒泡排序)

    1.排序算法 1.排序的分类 分为内部排序和外部排序,其中内部排序分为插入排序.选择排序.交换排序.归并排序和基数排序.插入排序包括直接插入排序和希尔排序:选择排序包括简单选择排序和堆排序:交换排序包 ...

  8. Java排序算法——选择排序

    Java排序算法--选择排序(Selection sort) 传送门 冒泡排序 插入排序 简述 选择排序(Selection sort)是一种简单直观的排序算法.它的工作原理如下.首先在未排序序列中找 ...

  9. C语言实现选择排序——简单选择排序算法

    C语言实现简单选择排序 文章目录 C语言实现简单选择排序 简单选择排序算法 1.交换操作 2.简单选择排序算法实现 项目完整代码 运行效果图 简单选择排序算法 1.交换操作 //交换实现 void s ...

  10. C语言——十四种内部排序算法【直接插入排序-冒泡排序-选择排序-插入排序-希尔排序-归并排序-快速排序-堆排序-折半插入排序-二分查找-路插入排序-表插入排序-简单选择排序-直接选择排序-树形选择】

    目录: 一:插入排序 A:直接插入排序 1.定义: 2.算法演示 实例1: 3.基本思想 4.排序流程图 实例1: B:希尔排序 1.定义: 2.算法演示 实例2: C:其他插入排序 a:折半插入排序 ...

最新文章

  1. 零起点学算法02——输出简单的句子
  2. python学习有哪些方向可以选择_学习Python后都有哪些发展方向?
  3. 皮一皮:感受下什么叫瑟瑟发抖的寒冬...
  4. 2020-12-08 Halcon初学者知识:【3-1】Halcon的语法
  5. Java功底之static、final、this、super
  6. 外包物料成本核算时的供应商确定
  7. 中国教育电视台的iEnglish英语风采秀 为我们揭示了“双减”的本质目标
  8. Learning Attention-based Embeddings for Relation Prediction in Knowledge Graphs Deepak
  9. 因果关系固定搭配知识库项目CausalCollocation
  10. java 合并流(SequenceInputStream)
  11. 使用JMeter如何实现上传文件
  12. [Swift]LeetCode1044. 最长重复子串 | Longest Duplicate Substring
  13. Linux中的Java类,Java基础入门学习-Java中类的属性
  14. linux软连接目标不存在,Linux ln创建软连接之后无法使用,无法whereis
  15. 【Java就业培训教程】——String类的学习
  16. .NET NAudio音频录制方法 2021-02-13
  17. iPhone刘海模组说明
  18. vector BLF 文件读写
  19. 个人feedly订阅源分享
  20. 舒亦梵:4.24非农周即将来临,作为投资者的你做好准备了吗

热门文章

  1. android 有序map,给HashMap排序,使之成为有序Map
  2. 20天学习Spark(0)之最简单版Spark入门
  3. (更新至v0.108)termux下载、安装教程 版本v0.88
  4. 心理学和管理学的一些效应学习
  5. BT.656标准简介
  6. 服务器损坏文件怎么办,“该文件可能已损坏或者文件所在的服务器没有响应或者该文件是只读的”怎么解决?...
  7. 省市县三级联动插件distpicker
  8. 用JavaScript做一个日历和用canvas做一个时钟
  9. 微信公众号全局返回码
  10. 常见视频封装格式(1) — AVI