Day44 Java数组08 冒泡排序

Day44 Java数组08 冒泡排序

1.什么是冒泡排序

  • 冒泡排序是Java八大排序算法之一,是最简单,最常用的排序法

  • 冒泡排序就是将数组中的相邻2个元素依次进行比较,通过把值较大的元素换位到后面(或前面),经过多轮比较,最终会把一个最大值换位到末尾(或开头)。再通过套嵌循环,多次重复(arrays.length-1次)上述比较相邻数字的小循环,从而使得数组内元素按照升序(或降序)排列。

    //注:如何实现元素换位
    int temp; //首先定义一个空水杯
    temp = arrays[i+1]; //把第二个元素倒进空水杯
    arrays[i+1] = arrays[i]; //把第一个元素倒进第二个杯子
    arrays[i] = temp; //再把第二个元素倒进第一个杯子,就实现了两个元素的换位

2.冒泡排序演练

复制代码
package com.kongying.array;

import java.util.Arrays;

public class Demo06 {
    //冒泡排序
    public static void main(String[] args) {
        int[] A = {35,11,72,96,88,25,10,109,6,55};
        System.out.println(Arrays.toString(sort(A)));  //调用sort方法
    }
    public static int[] sort(int[] arrays){  //定义排序方法sort
        for (int j = 0;j< arrays.length-1;j++) {  //外层循环,控制推多少轮
            for (int i = 0; i < arrays.length - 1; i++) {  //内层循环,,经过数组长度-1次比较,把一个最大值推到最后
                if (arrays[i] > arrays[i + 1]) {   //如果前一个数字比后一个数字大,就交换两个数字,经过内层循环,每次会把一个最大值推到最后
                    int temp;
                    temp = arrays[i + 1];
                    arrays[i + 1] = arrays[i];
                    arrays[i] = temp;
                }
            }
        }
        return arrays;
    }
}
相关推荐
镜花水月linyi11 分钟前
ConcurrentHashMap 深入解析:从0到1彻底掌握(1.3万字)
java·后端
极客Bob12 分钟前
Java 集合操作完整清单(Java 8+ Stream API)
java
雨中飘荡的记忆12 分钟前
Javassist实战指南
java
Knight_AL20 分钟前
JWT 无状态认证深度解析:原理、优势
java·jwt
寒山李白36 分钟前
IDEA中如何配置Java类注释(Java类注释信息配置,如作者、备注、时间等)
java
我要添砖java38 分钟前
<JAVAEE> 多线程4-wait和notify方法
android·java·java-ee
Rysxt_1 小时前
Spring Boot SPI 教程
java·数据库·sql
海边夕阳20061 小时前
主流定时任务框架对比:Spring Task/Quartz/XXL-Job怎么选?
java·后端·spring·xxl-job·定时任务·job
q***98521 小时前
VS Code 中如何运行Java SpringBoot的项目
java·开发语言·spring boot
帧栈1 小时前
开发避坑指南(72):HttpHeaders 的add()方法和set()方法有什么区别?
java·spring·http