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;
    }
}
相关推荐
人活一口气7 小时前
Spring Boot与AIGC的完美结合:从零搭建智能内容生成平台
java·spring boot·aigc
像我这样帅的人丶你还9 小时前
Java 后端详解(三):全局异常处理与 JPA 数据库映射
java·后端
NE_STOP9 小时前
vibe Coding -- 小项目实战
java
未秃头的程序猿15 小时前
Java 26正式发布!这3个新特性,让代码量直接减半
java·后端·面试
用户2986985301415 小时前
Word 文档文本查找与替换的 Java 实现方案
java·后端
阿哉15 小时前
Nacos 服务发现源码:藏在背后的两套事件机制,90%的人只讲了一半
java
咖啡八杯16 小时前
GoF设计模式——命令模式
java·设计模式·架构
AI人工智能_电脑小能手16 小时前
【大白话说Java面试题 第125题】【并发篇】第25题:说说 Java 线程的中断机制
java·后端·面试
Java内核笔记16 小时前
Spring Security 源码解析(六)无状态 JWT 实践:Session 共享与自定义过滤器
java·后端
荣码16 小时前
LangGraph多Agent协作:3个Agent干活比1个强,但我踩了4个坑
java·python