当前位置: 首页 > news >正文

【C语言】选择排序

基本原理
先找到数组中最大的那个数,将最大的数放到数组最右端(交换a[maxid]和a[len-1]这两个数的位置),然后继续从a[0]到a[len-2]中找到最大的数,然后交换a[maxid]和a[len-2]位置,依次查找交换,直到比较完a[0]和a[1]的大小结束,然后输出排序后的数组

代码一(定义max函数)

#include<stdio.h>
int max(int a[],int len)
{int maxid = 0;for(int i=1; i<len; i++){if(a[i] > a[maxid]){maxid = i;}}return maxid;//找到最大数在数组中的下标 
}int main()
{int a[] = {2,45,6,12,87,34,90,24,23,11,65};int len = sizeof(a)/sizeof(a[0]);//求数组长度 int i = len - 1;for(i; i>0; i--)//此处 "i>0;"最后循环到i=1时,数组长度为2,此时只需比较a[0]和a[1]的大小即可 {int maxid = max(a,i+1);int t = a[maxid];a[maxid] = a[i];a[i] = t;//将最大数与每次循环最右端的数交换位置 
//		printf("%d\n",maxid); 	//输出最大值得下标 }for( int i=0; i<len; i++){printf("%d ",a[i]);//输出排序后的数组 }return 0;
}

代码二

#include<stdio.h>
int main()
{int a[] = {2,45,6,12,87,34,90,24,23,11,65};int len = sizeof(a)/sizeof(a[0]);//求数组长度 		int i = len - 1;for(i; i>0; i--)//此处 "i>0;"最后循环到i=1时,数组长度为2,此时只需比较a[0]和a[1]的大小即可 {int maxid = 0;for(int j=1; j<=i; j++){if(a[j] > a[maxid]){maxid = j;}}int t = a[maxid];a[maxid] = a[i];a[i] = t;//将最大数与每次循环最右端的数交换位置 }for( int i=0; i<len; i++){printf("%d ",a[i]);//输出排序后的数组 }return 0;
}

运行结果
在这里插入图片描述

相关文章:

【C语言】选择排序

基本原理 先找到数组中最大的那个数&#xff0c;将最大的数放到数组最右端&#xff08;交换a[maxid]和a[len-1]这两个数的位置&#xff09;&#xff0c;然后继续从a[0]到a[len-2]中找到最大的数&#xff0c;然后交换a[maxid]和a[len-2]位置&#xff0c;依次查找交换&#xff0c…...

异步更新队列 - Vue2 响应式

前言 这篇文章分析了 Vue 更新过程中使用的异步更新队列的相关代码。通过对异步更新队列的研究和学习&#xff0c;加深对 Vue 更新机制的理解 什么是异步更新队列 先看看下面的例子&#xff1a; <div id"app"><div id"div" v-if"isShow&…...

【Unity的URP渲染管线下实现扩展后处理Volume组件_TemporalAntiAliasing(TAA)_抗锯齿(附带下载链接)】

【Unity的URP渲染管线下的TAA抗锯齿】 背景:1. Unity内置的抗锯齿只能够满足部分画面需求。展示一个锯齿示例。2. 在75寸大屏电视上跑通展示一个锯齿示例。- 在Camera上配置3. 安装了一个TAA组建,最后打包APK在安卓机上运行报错。- 经过测试排查,发现是没有将后处理的shader…...

NineData通过AWS FTR认证,打造安全可靠的数据管理平台

近日&#xff0c;NineData 作为新一代的云原生智能数据管理平台&#xff0c;成功通过了 AWS&#xff08;Amazon Web Service&#xff09;的 FTR 认证。NineData 在 FTR 认证过程中表现出色&#xff0c;成功通过了各项严格的测试和评估&#xff0c;在数据安全管理、技术应用、流…...

Qt应用开发(基础篇)——滚屏区域类 QScrollArea

一、前言 QScrollArea类继承于QAbstractScrollArea&#xff0c;QAbstractScrollArea继承于QFrame&#xff0c;是Qt滚动视图的常用部件。 滚屏区域基类 QAbstractScrollArea 框架类 QFrame QScrollArea类提供了对另一个小部件的滚动视图&#xff0c;基础功能、滚动条控制、界面策…...

安装最新版chromedriver 116,亲测可用

Version Selection...

html题库

什么是HTML? HTML的全称为 超文本标记语言 &#xff0c;是一种 标记语言 。 它包括一系列标签 &#xff0c;通过这些标签可以将网络上的文档格式统一&#xff0c;使分散的 Internet 资源连接为一个逻辑整体。 DOCTYPE 的作用是什么&#xff1f;标准模式与兼容模式&#xff08;…...

Android11 中 LED 使用-RK3568

文章目录 前言原理图设备树驱动前言 现在我们来学习点亮LED 原理图 然后对应在核心板原理图上查找 Working_LEDEN_H_GPIO0_B7,如下图所示: 那么我们只要控制 GPIO0_B7 即可控制 led 的亮灭。 设备树 leds: leds {compatible = "gpio-leds";work_led: work {gpi…...

BC77 有序序列插入一个数

描述 有一个有序数字序列&#xff0c;从小到大排序&#xff0c;将一个新输入的数插入到序列中&#xff0c;保证插入新数后&#xff0c;序列仍然是升序。 输入描述 第一行输入一个整数(0≤N≤50)。 第二行输入N个升序排列的整数&#xff0c;输入用空格分隔的N个整数。 第三…...

通过脚本使用Cppcheck做静态测试并生成报告(Windows)

1.安装cppcheck 先从cppcheck官方网站下载cppcheck的安装包。 注&#xff1a; &#xff08;1&#xff09;官网地址&#xff1a;https://sourceforge.net/projects/cppcheck &#xff08;2&#xff09;截止2023年8月&#xff0c;官方发布的最新版本是cppcheck-2.11-x64-Setup.…...

工业安全生产信息化平台的基本架构和关键功能分享

工业安全生产信息化平台是指利用信息技术手段&#xff0c;将工业安全生产管理与数据采集、传输、处理相结合&#xff0c;实现对工业安全生产全过程的数字化、信息化、智能化管理的平台。它通过集成多种信息系统和设备&#xff0c;实现对重大危险源监控预警、安全风险分级管控、…...

每日一道面试题之session 和 cookie 有什么区别?

Session和Cookie是两种在Web开发中用于跟踪用户状态的机制&#xff1a; 它们之间的区别如下&#xff1a; 存储位置&#xff1a;Cookie是存储在用户浏览器中的小型文本文件&#xff0c;而Session是存储在服务器上的数据结构。 数据安全性&#xff1a;Cookie中的数据可以被用户…...

SHELL 基础 显示字符颜色, 修改历史命令,Linux里的命令 执行顺序

echo 打印命令 &#xff1a; 显示字符串 &#xff1a; [rootserver ~]# echo this is SHELL language this is SHELL language [rootserver ~]# echo this is SHELL language this is SHELL language [rootserver ~]# echo "this is SHELL language" this is SH…...

Vue 和 JQuery 的区别在哪?为什么 JQuery 会被 Vue 取代?

在 Web 前端开发领域&#xff0c;我们经常会遇到一些不同的工具和框架&#xff0c;其中 Vue 和 JQuery, JQuery 是曾经备受欢迎的选择&#xff0c;而现在 Vue 是大多数人的选择。本文将探讨 Vue 和 JQuery 之间的区别&#xff0c;并讨论为什么越来越多的开发人员放弃 JQuery 而…...

Spring 中 Bean 注入与获取

Spring 中有哪些方式可以把 Bean 注入到 IOC 容器&#xff1f; 关于这个问题&#xff0c;我的回答入下&#xff1a;把 Bean 注入到 IOC 容器里面的方式有 7 种方式 1. 使用 xml 的方式来声明 Bean 的定义&#xff0c;Spring 容器在启动的时候会加载并解析这 个 xml&#xff0c;…...

STM32 中断复习

中断 打断CPU执行正常的程序&#xff0c;转而处理紧急程序&#xff0c;然后返回原暂停的程序继续运行&#xff0c;就叫中断。 在确定时间内对相应事件作出响应&#xff0c;如&#xff1a;温度监控&#xff08;定时器中断&#xff09;。故障处理&#xff0c;检测到故障&#x…...

Django的模型

定义模型 from django.db import models class User(models.Model):# 类属性是表示表的字段username models.CharField(max_length50,uniqueTrue)password models.CharField(max_length200)create_time models.DateTimeField(auto_now_addTrue) # auto_now_add新增数据时间…...

非计算机科班如何丝滑转码

近年来&#xff0c;很多人想要从其他行业跳槽转入计算机领域。非计算机科班如何丝滑转码&#xff1f; 方向一&#xff1a;如何规划才能实现转码&#xff1f; 对于非计算机科班的人来说&#xff0c;想要在计算机领域实现顺利的转码并不是一件容易的事情&#xff0c;但也并非不…...

PyTorch深度学习实战(12)——数据增强

PyTorch深度学习实战&#xff08;12&#xff09;——数据增强 0. 前言1. 图像增强1.1 仿射变换1.2 亮度修改1.3 添加噪音1.4 联合使用多个增强方法 2. 对批图像执行图像增强3. 利用数据增强训练模型小结系列链接 0. 前言 数据增强是指通过对原始数据进行一系列变换和处理&…...

SpringCloud Ribbon中的7种负载均衡策略

SpringCloud Ribbon中的7种负载均衡策略 Ribbon 介绍负载均衡设置7种负载均衡策略1.轮询策略2.权重策略3.随机策略4.最小连接数策略5.重试策略6.可用性敏感策略7.区域敏感策略 总结 负载均衡通器常有两种实现手段&#xff0c;一种是服务端负载均衡器&#xff0c;另一种是客户端…...

工业视觉杂散物检测系统方案设计

构建一套完整可靠的工业视觉检测系统&#xff0c;核心在于将其无缝嵌入到现有的装配流程中。下面是一个从系统架构部署、执行标准、再到具体模块技术选型的完整实施方案&#xff0c;希望能帮你构建一套精准且高效的检测闭环。 &#x1f3d7;️ 系统总体架构 一个完整的检测系统…...

告别托盘“隐身术”:Total Commander 9.5 最小化任务栏设置详解(附F12配置技巧)

告别托盘“隐身术”&#xff1a;Total Commander 9.5 最小化任务栏设置详解&#xff08;附F12配置技巧&#xff09; 第一次打开Total Commander&#xff08;以下简称TC&#xff09;时&#xff0c;许多用户会被它的"消失术"困扰——点击窗口右上角的减号按钮后&#x…...

CPT Markets:国际监管框架下的稳健运营

在评估金融服务平台时&#xff0c;监管合规、技术能力、客户服务等维度构成了重要的观察方向。CPT Markets作为业内较为活跃的服务机构&#xff0c;其在这些方面的实践具有一定的参考价值。本文将围绕评测视角&#xff0c;对其综合表现进行系统性的呈现&#xff0c;希望为读者提…...

终极指南:如何一键下载国家智慧教育平台电子课本PDF

终极指南&#xff1a;如何一键下载国家智慧教育平台电子课本PDF 【免费下载链接】tchMaterial-parser 国家中小学智慧教育平台 电子课本下载工具&#xff0c;帮助您从智慧教育平台中获取电子课本的 PDF 文件网址并进行下载&#xff0c;让您更方便地获取课本内容。 项目地址: …...

基于EVE ESI API与AI Agent的自动化游戏监控与数据分析实践

1. 项目概述&#xff1a;为AI助手注入EVE宇宙的灵魂 如果你是一名《EVE Online》的玩家&#xff0c;同时又对AI自动化工具感兴趣&#xff0c;那么你很可能和我一样&#xff0c;长期被一个矛盾所困扰&#xff1a;一方面&#xff0c;EVE这个沙盒宇宙充满了需要监控和管理的日常事…...

AI驱动游戏开发:Godogen自动化流水线全解析

1. 项目概述&#xff1a;当AI成为你的游戏开发合伙人 如果你是一名独立游戏开发者&#xff0c;或者对用Godot引擎做点小玩意儿感兴趣&#xff0c;那你肯定体会过那种感觉&#xff1a;一个绝妙的点子在你脑海里盘旋&#xff0c;但一想到要从零开始搭场景、写脚本、画素材&#x…...

知识图谱与智能体如何革新小说创作:graphify-novel项目深度解析

1. 项目概述&#xff1a;用知识图谱为你的小说创作装上“第二大脑”如果你是一位小说创作者&#xff0c;无论是网文作者、传统文学写作者&#xff0c;还是游戏叙事设计师&#xff0c;你一定经历过这样的痛苦时刻&#xff1a;写到第30章&#xff0c;突然想不起某个配角在第5章出…...

超完整Azure游戏开发模板:游戏服务器架构终极指南

超完整Azure游戏开发模板&#xff1a;游戏服务器架构终极指南 【免费下载链接】azure-quickstart-templates Azure Quickstart Templates 项目地址: https://gitcode.com/gh_mirrors/az/azure-quickstart-templates Azure Quickstart Templates是微软提供的开源项目&…...

BookGet:一键下载全球50+图书馆古籍资源的智能工具指南

BookGet&#xff1a;一键下载全球50图书馆古籍资源的智能工具指南 【免费下载链接】bookget bookget 数字古籍图书下载工具。 项目地址: https://gitcode.com/gh_mirrors/bo/bookget 你是否曾为查找古籍资料而奔波于各大数字图书馆&#xff1f;是否因为复杂的下载流程而…...

多语言AI Agent的构建:跨语言理解与任务执行

多语言AI Agent的构建:跨语言理解与任务执行 本文面向有一定大模型应用开发基础的工程师,从原理、架构、实战三个维度完整讲解可落地的多语言AI Agent构建方案,全文约11000字,代码可直接运行。 引言 痛点引入 你是否遇到过这些场景? 运营跨境电商平台时,每个语言站点要…...