Java 冒泡排序

news2024/12/23 1:04:48

1.冒泡排序是最出名的排序算法之一,总共有八大排序!
2.冒泡排序的算法相对简单,两层循环,外层冒泡轮数,里层以此比较
如下:
j < array.length - 1-i的作用:下一轮比较不再重复比较上一轮已经排序好的数。

package com.wang.array;

import java.util.Arrays;

public class ArrayDemo08 {
    public static void main(String[] args) {
        int[] a = {2,4,1,5,8,2,4,5,2,0};
        sort(a);
        System.out.println(Arrays.toString(a));
    }
    //冒泡排序
    /*1.比较数组中,两个相邻的元素,如果第一个数比第二个数大,我们就交换他们的位置
      2.每一次比较,都会产生出一个最大,或者最小的数字;
      3.下一轮则可以少一次排序!
     */
    public static int[] sort(int[] array) {
        //定义一个临时变量,用于实现两个数的交换
        int temp = 0;
         for (int i = 0; i < array.length - 1; i++) {
             for (int j = 0; j < array.length - 1-i; j++) {
                 //如果前一个数大于后一个数,就交换两个数的位置
                 if (array[j] > array[j+1]) {
                     temp = array[j];
                     array[j] = array[j+1];
                     array[j+1] = temp;
                 }
             }
         }
         return array;
    }
}

补充:Java中交换两个数的原理
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2128138.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

内衣洗衣机哪个牌子好用?汇总五款主流硬核内衣洗衣机

内衣洗衣机是近年来备受关注的小家电产品&#xff0c;虽然市场火爆&#xff0c;但还是存在大部分人对内衣洗衣机的不了解&#xff0c;会购买到质量差、清洗效果不好的内衣洗衣机&#xff0c;面对众多内衣洗衣机品牌&#xff0c;到底内衣迷你洗衣机什么牌子好呢&#xff1f;今天…

多线程篇五——wait和notify

多线程篇五——wait和notify 如笔者理解有误&#xff0c;欢迎交流指正⭐ 线程的执行先后顺序难以预料【抢占式执行】&#xff0c;但是实际开发中我们会需要掌握当下线程的执行顺序. 这就是wait和notify的作用.【都是Object方法即随便定义一个对象豆可以使用wait和notify】 wa…

跟李沐学AI:长短期记忆网络LSTM

输入们、遗忘门和输出门 LSTM引入输入门、忘记门和输出门 输入门计算公式为&#xff1a;。 遗忘门计算公式为&#xff1a;。 输出门计算公式为&#xff1a;。 它们由三个具有sigmoid激活函数的全连接层处理&#xff0c; 以计算输入门、遗忘门和输出门的值。 因此&#xff0c…

为什么不推荐使用Stack

Java已不推荐使用Stack&#xff0c;而是推荐使用更高效的ArrayDeque 为什么不推荐使用 性能低&#xff1a;是因为 Stack 继承自 Vector&#xff0c; 而 Vector 在每个方法中都加了锁。由于需要兼容老的项目&#xff0c;很难在原有的基础上进行优化&#xff0c;因此 Vector 就被…

鸟类目标检测系统源码分享

鸟类目标检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vis…

亲测好用,ChatGPT 3.5/4.0新手使用手册~

都知道ChatGPT很强大&#xff0c;聊聊天、写论文、搞翻译、写代码、写文案、审合同等等&#xff0c;无所不能~ 那么到底怎么使用呢&#xff1f;其实很简单了&#xff0c;国内AI产品发展也很快&#xff0c;很多都很好用了~ 我一直在用&#xff0c;建议收藏下来~ 有最先进、最…

RocketMQ出现The broker does not support consumer to filter message by SQL92

在使用RocketMQ使用SQL过滤消息的时候&#xff0c;出现下面错误 原因是我们的配置文件没有开启SQL过滤功能&#xff0c;我们需要在每个配置文件中添加下面命令 #开启过滤消息时支持SQL92标准 enablePropertyFiltertrue接着我们重启namesrv与broker服务就解决问题 # 1.进入bi…

Robust Image Denoising through Adversarial Frequency Mixup

基于对抗性混频的鲁棒图像去噪 论文链接&#xff1a;https://openaccess.thecvf.com/CVPR2024/Ryou_Robust_Image_Denoising_through_Adversarial_Frequency_Mixup 项目链接&#xff1a;https://github.com/dhryougit/AFM Abstract 基于深度神经网络的图像去噪方法经常与训练…

哈希表的底层实现(1)---C++版

目录 哈希表的基本原理 哈希表的优点 哈希表的缺点 应用场景 闭散列法 开散列法 开放定值法Open Addressing——线性探测的模拟实现 超大重点部分评析 链地址法Separate Chaining——哈希桶的模拟实现 哈希表&#xff08;Hash Table&#xff09;是一种数据结构&#x…

STM32G070 CubeMX配置多通道/单通道ADC+DMA流程 LL库

基础配置不再赘述&#xff0c;时钟这些根据硬件来配置 多通道ADCDMA配置图&#xff1a; 程序配置&#xff1a; 调试查看内存数据&#xff0c;硬件上将PA1接到GND&#xff0c;PA2接到3V3 采集的数据会循环覆盖内存 问题&#xff1a;代码里先初始化ADC_IN1&#xff0c;再初…

Spring扩展点系列-ApplicationContextAwareProcessor

文章目录 简介源码分析示例代码示例一&#xff1a;扩展点的执行顺序运行示例一 示例二&#xff1a;获取配置文件值配置文件application.properties内容定义工具类ConfigUtilcontroller测试调用运行示例二 示例三&#xff1a;实现ResourceLoaderAware读取文件ExtendResourceLoad…

CleanClip - 「CleanClip」是一款专为 Mac 设计的桌面剪贴板工具

官方介绍 欢迎使用 CleanClip —— Mac 上最简洁高效的剪贴板管理工具。CleanClip 专为追求简约操作体验的用户设计&#xff0c;它帮助用户记录系统剪贴板上的内容&#xff0c;并提供强大的分类管理能力&#xff0c;帮助你整理复制的内容&#xff0c;提高办公效率。 智能简洁&…

MAVEN如何导入项目

工作中经常需要导入他人的项目&#xff0c;那么如何导入呢&#xff1f; 1&#xff0c; 选择Maven面板&#xff0c;点 2&#xff0c;选中对应项目的pom.xml&#xff0c;双击即可 3&#xff0c;如果没有maven面板&#xff0c;可以选择view->Appearnce->Tool Window Bars…

HTML5元素定位

1.元素定位 为了实现网页整体布局&#xff0c;我们先要知道&#xff0c;一个元素&#xff0c;是如何定位到页面上的某个位置的&#xff0c;这就是元素定位。 元素定位有四种&#xff0c;可以使用position样式来设置元素定位&#xff0c;所以此属性值有四种&#xff1a; stat…

MybatisPlus新增数据时怎么返回新增数据的id

问&#xff1a;MybatisPlus新增数据时怎么返回新增数据的id&#xff1f;答&#xff1a;当插入操作执行后&#xff0c;MyBatis Plus会自动获取生成的ID并将其设置到传入的实体类对象的id属性中。当然&#xff0c;这需要你的表字段ID是自增的 实体类代码 public class Sites {p…

东风德纳携手纷享销客打造汽车零部件行业营销数智化新标杆

为进一步提升数字化经营管理水平&#xff0c;加速数字化转型&#xff0c;推进“品牌向上”战略落实落地&#xff0c;9月2日&#xff0c;东风德纳车桥有限公司召开CRM项目启动会&#xff0c;携手纷享销客&#xff0c;打造汽车零部件行业营销数智化标杆工程。东风德纳车桥总经理陆…

高效Flutter应用开发:GetX状态管理实战技巧

探索GetX状态管理的使用 前言 在之前的文章中&#xff0c;我们详细介绍了 Flutter 应用中的状态管理&#xff0c;setState、Provider库以及Bloc的使用。 本篇我们继续介绍另一个实现状态管理的方式&#xff1a;GetX。 一、GetX状态管理 基础介绍 GetX 是一个在 Flutter 中…

【原创】【总结】【C++类的设计要点】一道十分典型的含继承与虚函数的类设计题

设计类时的要点 1构造函数与析构函数&#xff1a;先在public中写上构造函数与析构函数 2成员函数&#xff1a;根据题目要求在public中声明成员函数&#xff1b;成员函数的实现在类内类外均可&#xff0c;注意若在类外实现时用::符号表明是哪个类的函数 3数据成员&#xff1a;关…

STM32L051K8U6-HAL-串口中断控制灯闪烁速度

HAL三步法&#xff1a; 1、配置下载线 2、配置晶振 3、配置时钟 4、 配置灯引脚属性为输出模式。并设置标签为LED 5、配置串口1 串口常用函数说明&#xff1a; 需要实现的伪代码&#xff1a; 示例&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1u6FamKgZhvcEsFAdgGeaw…

Realsense D455 imu 数据不输出?

现象 realsense_viewer 可以可视化查看imu数据, 但是realsense-ros 查看/camera/accel/sample和/camera/gyro/sample没有数据输出 背景 realsense_viewer 安装: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE…