学习笔记-选择排序

2023-10-29

选择排序

将一个一维数组从小到大排序。

思路

选择排序的思路是:首先认为数组的第一个数是最小的,保留它然后遍历它后面的数,跟它作比较,选择出最小的数和位置。遍历结束后,让这个最小的数和数组的第一位数交换,这样确定了第一个最小的数。之后重复这个过程,认为第二个数是最小的,遍历它后面的数和它作比较,结束后就会找到第二小的数和它的位置,与数组的第二位交换,这样就确定了两个数字的顺序。
也就是说,一共要进行数组的长度-1次大循环,每一次循环确定一个数的位置,如果一共有5个数,那么4次就会全部排完。而每一个小循环都用来遍历当前最小的数的后面所有数,所以j从i+1开始,直到数组的长度,因为array[i]就是当前循环假定的最小的数。其中,假如假定的最小数是真的,也就是后面没有数比它小,那就没必要进行交换,因此可以判断两者位置是否相等,进行优化。

代码

private static void selcetSort(int[]</
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

学习笔记-选择排序 的相关文章

随机推荐

  • (小白教学) 用Node.js+Mysql+Express从0搭建实现简单的登录注册

    Node js Express MySql实现用户登录注册 开发工具 vscode git postman 工程目录 数据库表 node搭建过程 首先创建一个为空文件夹server 打开git 初始化一个package json包 npm
  • PointNet学习笔记(一)—— 论文

    PointNet学习笔记 一 论文 本文记录了博主在学习 PointNet Deep Learning on Point Sets for 3D Clasification and Segmentation 过程中的总结笔记 更新于2019
  • linux grpc c++编译安装

    环境信息 1 操作系统 centos7 4 2 g 版本 4 8 5 grpc v1 29 1 版本 源码下载 因为国内现在访问github速度很慢 这里用了代理镜像 git clone b v1 29 1 https hub xn gzu
  • 安装打印机时LPT,COM、USB端口区别

    LPT 并口 LPT是用于使用打印机或其它设备的 LPT并口是一种增强了的双向并行传输接口 在USB接口出现以前是扫描仪 打印机最常用的接口 目前使用滴少 COM 串口 COM端口通常用于连接鼠标及通讯设备 如连接外置式MODEM进行数据通
  • 内网进行spring-boot开发时Jar包依赖的解决

    1 简介 使用Spring Boot可以轻松的创建独立运行的程序 非常容易构建独立的服务组件 是实现分布式架构 微服务架构的利器 Spring Boot简化了第三方包的引用 通过提供的starter 简化了依赖包的配置 1 1 Spring
  • Cisco Packet Tracer配置操作的三种命令模式

    Cisco Packet Tracer三种基本命令模式 这里我们需要讲一下三种命令模式 今后绝大部分操作都通过命令实现 所以需要熟悉命令模式 在路由器命令配置界面中演示 三种命令模式介绍 用户模式 用户模式下可进行的操作较少 我们一般不在用
  • kubeadm init三个master节点遇到的问题

    要创建三个master节点 就不能使用其中一台主机的IP 所以申请了一个VIP地址 kubeadm init apiserver advertise address 0 0 0 0 image repository k8s gcr io c
  • qmake 乱乱乱谈(四)

    继续qmake 本文主题 低调的 TEMPLATE subdirs 非常非常常用的一个东西 可是manual中却介绍的很少 太低调了 在编写包含多可执行文件 库 插件 的程序时 一直不敢相信subdirs的能力 以至于曾一度想转到cmake
  • python三级考什么_什么是计算机三级考试?计算机三级考什么?

    什么是计算机三级考试 计算机三级考什么 2020 04 1118 04 03 来源 上学吧 作者 dengyangjie 全国计算机等级考试 National Computer Rank Examination 简称NCRE 是经原国家教育
  • HTTP POST GET 本质区别详解

    一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式 在FORM提交中 可以通过Method指定提交方式为GET或者POST 默认为GET提交 Http定义了与服务器交互的不同方法 最基本的方法有4种 分别是GET POST PU
  • 硬件工程师修炼的几层境界

    分享一篇文章 觉得写的很好 mark一下 第零层 1 对基础技术有认知 2 模电 数电 电路分析 信号与系统 物理学之电磁学基础 3 基本掌握焊接 电路设计软件 示波器使用 万用表等基础仪器仪表的使用 第一层 1 精力主要花在学习原理图工具
  • Windows 7 下 vs2010内存泄漏检测工具VLD的使用

    1 环境和软件 Windows7 32位系统 Visual Studio 2012 旗舰版 vld 2 2 3 setup exe 大小1 04M 2 步骤 1 下载安装 下载好 vld 2 2 3 setup exe 大小1 04M 并安
  • CentOS 7.9 使用rpm包安装MySQL-5.7.43

    参考 refman 5 7 pdf 2 5 5 Installing MySQL on Linux Using RPM Packages from Oracle 前期准备 1 防火墙端口检查与设置 检查防火墙状态 systemctl sta
  • 买服务器做网站 镜像选什么,云服务器做网站镜像类型选啥

    云服务器做网站镜像类型选啥 内容精选 换一换 创建一台或多台云服务器 V1 1版本创建云服务器的接口兼容了V1版本创建云服务器 按需 的功能 同时合入新功能 支持创建包年 包月的弹性云服务器 本接口为异步接口 当前创建云服务器请求下发成功后
  • 【Golang

    环境准备 GoLang go1 15 7 windows amd64 Docker 1 13 1 MySQL 8 0 28 一 利用容器部署mysql 1 首先通过docker pull mysql拉取mysql镜像 root k8s ma
  • Jetty篇一之初识Jetty

    前言 最近公司项目中用到了Jetty来作为项目的web容器 借此机会来分享一下我的学习心得 在学习Jetty之前 一定要了解一些Jetty的基本概念以及优缺点 这样才方便做更深入的学习 现在让我来慢慢揭开它的神秘面纱吧 基础 什么是Jett
  • 大数据模型案例库-涵盖多行业,超百个实战项目案例

    平台目前积累了大量的人工智能应用模型 不仅包括多年来人工智能企业服务方面的沉淀 还包括大量其他企业的真实项目应用模型 以及高校智能工作室成果模型 覆盖教育 医疗 交通 金融 科技 农业等18个行业 平台面向高校 企业 个人等广大用户群体 所
  • Candence原理图误删图页并保存退出后的恢复方法

    一早打开Candence准备工作 发现原理图少了几页 心里很慌 昨晚在画PCB的时候设置按了几次Delete键 没有反应 可能删了原理图 关闭的时候也没有看 直接保存退出了 看了之前拷贝备份的文件 时间有点久 那只能靠软件的自动备份功能了
  • C语言进阶(九)—— 函数指针和回调函数、预处理、动态库和静态库的使用、递归函数

    1 函数指针 1 1 函数类型 通过什么来区分两个不同的函数 一个函数在编译时被分配一个入口地址 这个地址就称为函数的指针 函数名代表函数的入口地址 函数三要素 名称 参数 返回值 C语言中的函数有自己特定的类型 c语言中通过typedef
  • 学习笔记-选择排序

    选择排序 将一个一维数组从小到大排序 思路 选择排序的思路是 首先认为数组的第一个数是最小的 保留它然后遍历它后面的数 跟它作比较 选择出最小的数和位置 遍历结束后 让这个最小的数和数组的第一位数交换 这样确定了第一个最小的数 之后重复这个