18068 选择排序

news/2024/9/18 6:42:56/ 标签: 算法, 数据结构

### 思路
1. **初始化**:定义变量`i`, `j`, `k`和临时变量`tmp`。
2. **外层循环**:遍历数组的每个元素,`i`从0到`n-2`。
3. **内层循环**:从`i+1`到`n-1`,找到最小元素的索引`k`。
4. **交换**:将最小元素与当前元素交换。

### 伪代码
1. 初始化`i`, `j`, `k`和`tmp`。
2. 外层循环从`i=0`到`n-2`:
   - 设置`k=i`。
   - 内层循环从`j=i+1`到`n-1`:
     - 如果`a[j] < a[k]`,则`k=j`。
   - 交换`a[k]`和`a[i]`。

### C代码

#include <stdio.h>void sort(int a[], int n) {int i, j, k, tmp;for (i = 0; i < n - 1; i++) {k = i;for (j = i + 1; j < n; j++) {if (a[j] < a[k]) {k = j;}}tmp = a[k];a[k] = a[i];a[i] = tmp;}
}int main() {int a[10];int i;for (i = 0; i < 10; i++) {scanf("%d", &a[i]);}sort(a, 10);for (i = 0; i < 10; i++) {printf("%d\n", a[i]);}return 0;
}


 


http://www.ppmy.cn/news/1525948.html

相关文章

矩阵直播换IP:如何使用代理IP提升直播效果

在直播行业中&#xff0c;稳定的网络连接和高质量的直播效果至关重要。然而&#xff0c;随着观众数量的增加和网络环境的复杂化&#xff0c;直播过程中可能会遇到网络波动、IP封禁等问题。通过使用代理IP&#xff0c;可以有效解决这些问题&#xff0c;提升直播效果。本文将详细…

Python | Leetcode Python题解之第406题根据身高重建队列

题目&#xff1a; 题解&#xff1a; class Solution:def reconstructQueue(self, people: List[List[int]]) -> List[List[int]]:people.sort(keylambda x: (-x[0], x[1]))n len(people)ans list()for person in people:ans[person[1]:person[1]] [person]return ans

SAP自动化-ME12批量更新最后一行的价格

Python源码 #-Begin-----------------------------------------------------------------#-Includes-------------------------------------------------------------- import sys, win32com.client import os import time#-Sub Main-----------------------------------------…

MacOS wine中文乱码问题

安装wine 1、brew update 执行失败&#xff0c;提示安装如下 2、git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow 3、git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow 3、brew update 4、brew in…

c语言是干嘛的

C语言是一种通用的、过程式的编程语言&#xff0c;主要用于系统编程、底层开发和各种高性能应用。它由丹尼斯里奇&#xff08;Dennis Ritchie&#xff09;于1972年在贝尔实验室开发&#xff0c;最初是为了实现UNIX操作系统。 C语言的主要用途&#xff1a; 系统编程&#xff1a…

RK3576芯片在智能家居里中型智慧屏产品的应用方案分析

智能家居在近年来得到了快速发展&#xff0c;AI技术不断发展&#xff0c;人机交互十分成熟&#xff0c;各种家电也都迎来了智能化浪潮&#xff0c;智能家居为人们提供了优秀的产品体验&#xff0c;受到主流消费者的青睐&#xff0c;智能家居里的中型智慧屏产品也随之兴起。 瑞芯…

多速率信号处理-插值和插值滤波器

插值意味着提高采样率&#xff0c;故而被称为上采样&#xff08;Up Sample&#xff09;。设原始序列为 x ( n ) x(n) x(n)&#xff0c;采样率为 f x f_x fx​&#xff0c;插值因子为 L L L&#xff0c;则插值的过程为原始序列每相邻两个样点之间插入 L − 1 L-1 L−1个 0 0 0构…

AI 加持的云端 IDE——三种方法高效开发前后端聊天交互功能

以下是「豆包 MarsCode 体验官」优秀文章&#xff0c;作者努力的小雨。 豆包 MarsCode 豆包MarsCode 编程助手支持的 IDE: 支持 Visual Studio Code 1.67.0 及以上版本&#xff0c;以及 JetBrains 系列 IDE&#xff0c;如 IntelliJ IDEA、Pycharm 等&#xff0c;版本要求为 22…

Nginx+Tomcat(负载均衡、动静分离)

目录 一、Nginx概述 1.Nginx应用 二、正向代理和反向代理 1.正向代理 1.1主要作用 1.2工作原理 2.反向代理 2.1主要作用 2.2工作原理 三、负载均衡模式 1.轮询 2.最少连接数 3.IP 哈希 4.加权轮询 5.最少时间算法 6.一致性哈希 四、规划部署负载均衡和反向…

HarmonyOS学习(十二)——数据管理(一)分布式数据

文章目录 1、分布式数据服务概述2、KV数据模型&#xff08;键值对数据库&#xff09;3、分布式数据服务的约束和限制4、接口说明5、分布式数据服务开发步骤5.1、导入模块5.2、构造分布式数据库管理类实例5.3、获取、创建分布式数据库5.4、订阅分布式数据库的数据变化5.5、插入数…

canal.adapter同步 ES 索引创建 大概配置详情

canal.adapter同步 ES 索引创建 大概配置详情 PUT /test {"settings": {"number_of_shards": 1,"number_of_replicas": 0,"analysis": {"analyzer": {"htmlStripAnalyzer": {"filter": ["lower…

LabVIEW多语言支持优化

遇到的LabVIEW多语言支持问题&#xff0c;特别是德文显示乱码以及系统区域设置导致的异常&#xff0c;可能是由编码问题或区域设置不匹配引起的。以下是一些可能的原因及解决方案&#xff1a; 问题原因&#xff1a; 编码问题&#xff1a;LabVIEW内部使用UTF-8编码&#xff0c;但…

【鸿蒙开发 day12】

鸿蒙开发-布局进阶 一.定位1.绝对定位2.相对定位3.定位案例-VIP 二.Z序控制三.层叠布局四.bilibili卡片案例五.list列表容器组件滚动条状态列表分割线 六.通用属性七.动画八.图形变换1.平移2.定位结合平移实现精准定位3.旋转和缩放 九.总结 一.定位 作用&#xff1a;改变组件位…

机器学习-------数据标准化

什么是归一化&#xff0c;它与标准化的区别是什么&#xff1f; 一 作用 在做训练时&#xff0c;需要先将特征值与标签标准化&#xff0c;可以防止梯度防炸和过拟合&#xff1b; 将标签标准化后&#xff0c;网络预测出的数据是符合标准正态分布的—StandarScaler()&#xff0c…

setImmediate() vs setTimeout() 在 JavaScript 中的区别

setImmediate() vs setTimeout() 在 JavaScript 中的区别 在 JavaScript 中&#xff0c;setImmediate() 和 setTimeout() 都用于调度任务&#xff0c;但它们的工作方式不同。 JavaScript 的异步特性 JavaScript 以其非阻塞、异步行为而闻名&#xff0c;尤其是在 Node.js 环境…

[000-002-01].第03节:Linux系统下Oracle的安装与使用

2.1.Docker安装Oracle 在CentOS7中使用Docker安装Oracle&#xff1a; 1.安装Docker,详细请参考&#xff1a;https://blog.csdn.net/weixin_43783284/article/details/1211403682.拉取镜像&#xff1a; docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g3.下载…

用Blender来烘培模型材质

通常我们在做三维设计&#xff0c;游戏开发的时候&#xff0c;经常需要从网上下载一些3D模型&#xff0c;这些模型采用的材质分辨率通常都不一样&#xff0c;而我们从性能考虑&#xff0c;需要对材质进行统一的处理&#xff0c;例如把材质都统一为2K的分辨率。 我们可以在Blen…

105页PPT:华为ISC集成供应链变革、模式与方法解析

105页PPT:华为ISC变革、模式与方法PPT,下载链接见文末~ 华为ISC&#xff08;Integrated Supply Chain&#xff0c;集成供应链&#xff09;规划管理与变革是华为公司战略转型和提升核心竞争力的关键举措之一。通过多年的努力与实践&#xff0c;华为已经成功构建了一个高效、协同…

怎么把网站设置成HTTPS访问?

有很多的网站尤其是公司网站都是可以HTTPS访问的&#xff0c;而且在地址栏前面还会显示安全锁&#xff0c;这就是HTTPS证书所起到的作用。没有安装HTTPS证书的网站强制用HTTPS访问会被浏览器提醒不安全。那么我们怎么解决这个问题呢&#xff1f; 解决办法 一&#xff1a;首先…

Unity的Button组件进行扩展

废话不多说,在Untiy中,如果想要对Button等组件进行扩展的话,那么不仅仅只需要将新增的属性设置为public或者增加SerializeField字段就行了的,同时需要对Inspector的GUI面板进行修改,以下直接展示代码: using UnityEngine; using UnityEngine.EventSystems; using UnityE…