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;
    }
}
相关推荐
好家伙VCC3 分钟前
**神经编码新视角:用Python实现生物启发的神经信号压缩与解码算法**在人工智能飞速发展的今天
java·人工智能·python·算法
一灯架构6 小时前
90%的人答错!一文带你彻底搞懂ArrayList
java·后端
Y4090017 小时前
【多线程】线程安全(1)
java·开发语言·jvm
布局呆星8 小时前
SpringBoot 基础入门
java·spring boot·spring
风吹迎面入袖凉8 小时前
【Redis】Redisson的可重入锁原理
java·redis
w6100104668 小时前
cka-2026-ConfigMap
java·linux·cka·configmap
语戚9 小时前
力扣 968. 监控二叉树 —— 贪心 & 树形 DP 双解法递归 + 非递归全解(Java 实现)
java·算法·leetcode·贪心算法·动态规划·力扣·
quxuexi9 小时前
网络通信安全与可靠传输:从加密到认证,从状态码到可靠传输
java·安全·web
hrhcode10 小时前
【java工程师快速上手go】二.Go进阶特性
java·golang·go