直接选择排序法

数据结构与算法:排序算法-1(直接插入排序法、选择排序法、冒泡排序法) 数据结构与算法;排序算法;直接排序法;选择排序法;冒泡排序法 阅读详情

通过定义一个index索引变量,array[index]数值直接与数值array[array.length-i]互换,比如:int[]{5, 1, 2 ,8 ,4}数组,第一次比较的时候,i=1;  index;   array.length-i=4,就是array[index]与最后一个数值互换,第二次比较时候,array.length-i=3,就是array[index]与倒数第二个数值互换。

代码如下:

public class SelectSort{
  public void sort(int[]a){
          int temp;
          int index;//索引变量
          for(int i=1;i<a.length;i++){
              index=0;
              for(int j=1;j<a.length-i;j++){
                   if(a[j]>a[index]){
                        index=j;
                   }
              }
            temp=a[a.length-i];
            a[a.length]=a[index];
            a[index]=temp;
           }
  printArray(a);//输出正序数组
  }

}


ARTIX-7 GTP 3G-SDI 工程构建与调试实战 本文详细介绍了基于ARTIX-7 FPGA和GTP收发器的3G-SDI工程构建与调试实战。从基础概念解析到Vivado工程创建、GTP IP核配置、SDI IP核集成,再到系统集成与时钟域处理,提供了全面的技术指导。文章还分享了调试技巧、常见问题排查方法以及性能验证步骤,帮助开发者快速掌握3G-SDI视频传输技术的实现与优化。 阅读详情

相关推荐

STM32内存大小与地址的对应关系以及计算方法

1、概述 在计算机中要访问存储区,都是通过地址来进行访问的,包括所有的外设(比如串口、内存、硬盘等),都对应有一个访问地址,地址就相当于门牌号,有了门牌号,我们才知道操作的是哪一个区域、哪一个外设。 最被大家熟知的是计算机内存,计算机内存有4G、8G,16G等等,对于程序员而言,要在代码中操作这些内存,肯定得知道内存的地址,此外,还需要会计算地址与内存大小的计算方法与对应关系。STM32作为微

Ace's Blog 4万+

【数据结构】选择排序(一)——直接选择排序

本文介绍了排序算法中的直接选择排序算法,主要从算法思想、实例演示、代码实现等方面进行详细讲解。

Jacky_Feng的博客 1万+

AtmelStudio 7 ASF库学习笔记一:新建工程、配置时钟、下载程序和查看官方例程

由于需要学习一下atmel的atsaml 系列,使用AtmelStudio 7开发,之前主要用STM32,现在看到Atmel的库函数,其实是有些类相似的。 ASF3的库对应ST的标准库。ASF4对应ST的HAL库,Ateml Start对应STM32CubeMX。但在这里还是用ASF3来开发,因为Ateml Start还不支持我的这个芯片,而且和STM32的HAL库类似,ASF4为了好移植都是底...

yxy244的博客 8655

【算法】直接选择排序解析

直接选择排序是指每次都从剩余数据中选出最大或者最小的,将其排在已经排好的有序表后面。

NoBack7--For the dream 3258

HDR视频技术之七:逆色调映射

HDR 技术说是继 4K 之后视频领域的又一次重大技术突破,不仅提高图像的动态范围,同时也提供了更宽的色域,并提升了画面在高光和暗部的细节信息,带给观看者更加真实的视觉体验。但作为 HDR 产业链的核心,内容短缺的问题仍然是 HDR 普及和成熟的重要限制因素。众多电视厂商将 HDR 技术作为其产品规划中的重要技术,主要是在硬件方面进行提升。而由于 HDR 内容制作对于设备要求较高,对采集、调色、显示等多方面都需要较高的质量要求,内容制作的复杂度和周期长等因素,导致了 HDR 内容的匮乏。

多媒体开发者 2422

Windows 2012 SYSVOL复制失败的处理

题外话:晓原理、知架构、查日志是排错的三件法宝今天在DC1上新建并链接了一个组策略对像,在客户端刷新时,却报下面的错误:“处理组策略失败。Windows无法应用组策略对象LDAP….”如下图所示:于是在客户端用\\domain.com访问,发现\\domain.com\SYSVOL\domain.com\policies下面没有上面报错的组策略对象。这是怎么一回事呢,pin...

weixin_33989780的博客 1669

基本排序算法(直接排序,选择排序,冒泡排序)

一、 直接排序 思路: 首先需要两个嵌套的for循环,外层for循环控制轮数;内层for循环控制每轮比较的次数。 这里来演示一下遍历的过程: 第一轮: 首先让i指向数组的首部,让j指向i的后一个元素,两者比较,2比1大,所以交换2跟1的位置,然后j后移 依次这样排完一轮的结果为: 第二轮: 让i后移,j指向i的后一位,继续重复第一轮的过程。 第三轮: 一直重复就可以排序完成了。 代码实现 //此代码包含转换过程 import java.util.*; public class DSort{ publ

m0_52384288的博客 5005

手把手调试Android 10 DHCP服务:从dumpsys network_stack到DhcpServer.java的实战技巧

本文详细介绍了在Android 10中调试DHCP服务的实战技巧,从使用dumpsys network_stack分析服务状态到深入DhcpServer.java源码追踪问题。文章提供了完整的工具链配置、关键调试命令和常见问题解决方案,帮助开发者高效解决DHCP服务未启动、IP分配失败等典型问题,特别适合需要深入理解Android网络架构的开发者参考。

uu89012的博客 743

排序算法之直接选择排序【图文详解】

本文主要讲述数据结构排序算法中的直接选择排序,附有图文详解。

LiU11e的博客 1780

RTOS与Linux功能差异与应用场景全面对比

在嵌入式系统的开发中,操作系统的选择至关重要。和是两种广泛应用的操作系统,它们在功能、设计目标以及应用领域中各具优势。随着嵌入式系统的不断发展,已成为嵌入式行业的大趋势。那么,这两者到底有什么不同呢?

硬核科技 400

用urdf给自己的ROS小车编写模型

3.3 使用urdf编写自己的ROS小车模型 3.3.1 常见的ROS小车结构有哪些? 下面就是常见的ROS小车,相信在大家的脑海里已经有了自己小车的样子,下面我和大家一起使用urdf对ros小车建模。 这里只对urdf进行简单介绍,然后就带大家使用urdf最基础的标签,建立机器人的urdf机器人模型。关于更多细节,请参看官网:http://wiki.ros.org/urdf/Tutorials 3.3.2 什么是urdf?建模的原因? 什么是urdf? URDF(Unified Robot Descri

「小白学移动机器人」一个专注分享移动机器人相关知识的公众号! 1万+

直接选择排序(含图解)

选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零,选择排序是一种不稳定的排序方法。 实现原理及过程(含图解) 比如我们对 “8,9,1,3,5,2,7,6” 这组n...

weixin_45051591的博客 1万+

Hugging Face 最新开源 SmolVLA 小模型入门教程(一)

今天,我们介绍SmolVLA,这是一个紧凑型(450M)、开源的视觉-语言-动作模型,专为机器人设计,可在消费级硬件上运行。 仅在带有lerobot标签的开源社区共享数据集上进行预训练。 SmolVLA-450M在模拟环境(LIBERO、Meta-World)和真实世界任务(SO100、SO101)中,表现优于规模更大的VLA模型及强基线模型如ACT。 支持异步推理,响应速度提升30%,任务吞吐量提升2倍。

2506_90492529的博客 4078

JAVA的 直接排序法,选择排序法,冒泡排序法

JAVA、 直接排序法、选择排序法、冒泡排序法

weixin_43641920的博客 411

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

C++排序之直接选择排序法

直接选择排序算法是一种简单直观的排序算法。它首先在未排序序列中找到最小(大)元素,存放到排序序列的其起始位置,然后再从剩余未排序的序列元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素排序完毕。 代码实现如下: #include using namespace std; void print(int a[], int n ) { cout<<n <<":

蜗牛的专栏 5864

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

直接排序法又叫选择排序:choose sort

题目:使用直接排序法将下列数组(从小到大排序) 思路:第一次:使用索引值为0的元素与其他位置的元素挨个比较一次,如果发现比0号索引值的元素小的,那么交换位置,第一轮下来最小值被放在了第一位 第二次:将索引值为1的元素与其他位置的元素挨个比较一次,如果发现比1号索引值的元素小的,那么交换位置,第二轮下来第二小的值被放在了第二位 ...这样依次循环比较n-1次,实现有小到大的排序...

Welcome to parkour's blog. 1330

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

直接选择排序法(注意区分与冒泡排序的区别)

直接选择排序法是将指定排序位置与其他数组元素分别对比,如果满足条件就交换元素,注意区分冒泡排序,他不是交换相邻的,而是把满足条件的与指定位置的交换。比如array{7,8,6,5,9,3,1},指定把最大的放在最后一位,先从第一位开始比较,8比7大,则下一次就是6与8比较(因为6比8小),再5与8比较,以此类推for(int j=1;j&lt;a.length;j++){ int in...

weixin_42296562的博客 2803

求第k小的数、第k大的数、中位数的三种算法(nth_element()、快速选择算法、直接排序法)

题目描述:给定一个n个元素的无序序列,求出第k小的数、第k大的数、中位数。 注意:其实要求出第k大的数,只需要求出第 (n+1)-k 小的数即可,中位数同理,如果n为偶数,就是求出(第 n/2 小的数+第 n/2+1 小的数) / 2,如果n为奇数,就是求出第 n/2 + 1小的数。 下面给出三种解法: nth_element() 快速选择法 直接排序法 方法1:nth_element()...

东瓜blog 1834

例题6--2//运用直接 选择排序法对整数数组元素按照从小到大顺序排序

//运用直接 选择排序法对整数数组元素按照从小到大顺序排序 #include #define SIZE 8 int main() { int a[SIZE]={18,35,36,61,9,112,77,12}; //输出原数组 for(int i=0;i<=SIZE-1;i++) cout<<a[i]<<endl; //对数组

hedafighter2011的专栏 3238

数据结构-排序: 选择排序(直接选择排序法)

 数据结构-排序: 选择排序(直接选择排序法) 直接选择排序(Straight Selection Sort)直接选择排序的基本思想     n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果: ①初始状态:无序区为R[1..n],有序区为空。 ②第1趟排序     在无序区R[1..n]中选出关键字最小的记录R[k],将它与无序区的第1个记录R[1]交

仰望者! 924

5、直接选择排序法SeletSort()

直接选择排序法SeletSort()

风暴计划 383

java 冒泡排序法、直接排序法、选择排序法

java 冒泡排序法、直接排序法、选择排序法 一、冒泡排序法 算法原理 a.比较相邻的元素。如果第一个比第二个大,就交换他们两个。 b.对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 c.针对所有的元素重复以上的步骤,除了最后一个。 d.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 冒泡排序就是把小的元素往前调或者把...

时光的时的博客 355

经典算法之冒泡排序法与直接选择排序法

冒泡排序与选择排序

人生处处是围城,一切都是最好的安排! 1874
上一篇: 冒泡方排序
下一篇: 直接选择排序法
marser1234
博客等级 码龄12年 22粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值