首页 > 其他分享 >选择排序

选择排序

时间:2024-04-05 09:00:11浏览次数:12  
标签:int 元素 j1 选择 升序 排序

#include <bits/stdc++.h>
using namespace std;
int main(){
    int n;
    cin>>n;
    int a[n+5];
    for(int i = 0;i<n;i++){
        cin>>a[i];
    }
    int j1;
    for(int i = 0;i<n;i++){
        j1 = i;
        for(int j = i+1;j<n;j++){
            if(a[j]<a[j1]){
                j1 = j;
            }
        }
        swap(a[i],a[j1]);
    }
    for(int i = 0;i<n;i++){
        cout<<a[i]<<" ";
    }
    return 0;
}

 基本思想

每次从未排序中选择出一个最小的元素,和未排序的第一个元素进行交换

重复上述过程,能将元素进行升序排列

标签:int,元素,j1,选择,升序,排序
From: https://www.cnblogs.com/wangyihang-xh/p/18115460

相关文章

  • 拓扑排序--有向无环图中一个节点的所有祖先
    题目描述给你一个正整数 n ,它表示一个 有向无环图 中节点的数目,节点编号为 0 到 n-1 (包括两者)。给你一个二维整数数组 edges ,其中 edges[i]=[fromi,toi] 表示图中一条从 fromi 到 toi 的单向边。请你返回一个数组 answer,其中 answer[i]是第 i 个节......
  • 【JS】拖动排序
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content="width=device......
  • 多表的联合查询以及分组排序与HAVING筛选
    DDL【创建数据库】——学生表——成绩表CREATETABLE`student`(`id`int(11)NOTNULLAUTO_INCREMENTCOMMENT'学号',`createDate`datetimeDEFAULTNULL,`userName`varchar(20)DEFAULTNULL,`pwd`varchar(36)DEFAULTNULL,`phone`varchar(11)DEFAU......
  • 少儿编程 2024年3月电子学会图形化编程等级考试Scratch一级真题解析(选择题)
    2024年3月scratch编程等级考试一级真题选择题(共25题,每题2分,共50分)1、单击下列哪个按钮,能够让舞台变为“全屏模式”A、B、C、D、答案:C考点分析:考查scratch平台的使用,四个选项分别是:开始程序,停止程序,全屏模式,恢复正常模式,答案C2、下列哪个选项可以将当前背景换成第二......
  • 算法绘本-选择排序
    选择排序也是一种比较简单的排序方式,其原理是在给定的一系列值中,首先找出最小的值放在第一位,然后在剩下的值中找出最小的值放在第二位,以此类推,直到剩下的值只有一个的时候,则完成了排序。下面看一个例子,假设给定一组数字3,2,8,2,4,9,1首先是第一轮,假设第一个数字3为最小值,记录下......
  • 【算法】BFS、并查集和拓扑排序
    最近刷到了两道关于图论很有意思的题目()。做法颇有相似之处,因此记录一下吧AcWing2069.网络分析标签:dfs、并查集题目描述题目大意是,有一个\(n\)个顶点的网络,初始状态图中没有边。有两种操作:操作1将节点\(a\)和节点\(b\)连接起来;操作2使节点\(p\)的值加\(t\),\(t\)值会沿着网......
  • 坐标排序
    题目描述输入 n 个不同的坐标,按 x 轴的值从小到大排序,如果 x 相同,则按照 y 排序。输入格式第 1 行是一个整数 n ( n <=10000 )。接下来有 n 行,每行有 2 个整数,代表了 1 个点的坐标。输出格式输出 n 行,每行有 2 个整数,输出排序后的 n 个坐标。......
  • 【算法】堆排序
    完全二叉树在学习堆排序之前,我们先对完全二叉树有一个基本的了解。构建过程:数据从上到下,从左到右依次进行构建。我们给出以下数据 我们构建出以下完全二叉树我们观察每个节点的下标,会发现以下规律。 N[i]的左子树:N[2i+1] N[i]的右子树:N[2i+2] N[i]的父节点:N......
  • 在排序数组中查找元素的第一个和最后一个位置
    34.在排序数组中查找元素的第一个和最后一个位置-力扣(LeetCode)题目描述给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1,-1]。你必须设计并实现时间复杂......
  • uniapp选择退出到指定页面
    方法一:返回上n层页面onUnload(){ uni.navigateBack({ delta:5,//返回上5层 }) },方法二:关闭当前页面,跳转到应用内的某个页面。uni.redirectTo({ url:"../home/index"//页面地址 })方法三:关闭所有页面,打开到应用内的某个页面。(导航栏页面)uni.reLaunc......