Java冒泡排序

Java冒泡排序算法是一种简单的排序算法,它通过多次比较和交换相邻元素的方式将最大(或最小)的元素逐步移动到数组的末尾。以下是Java冒泡排序算法的实现步骤:

  1. 遍历数组,从第一个元素开始,依次比较相邻的两个元素。
  2. 如果前一个元素大于后一个元素,则交换它们的位置。
  3. 继续遍历数组,重复上述比较和交换的步骤,直到没有需要交换的元素为止。
  4. 重复执行上述步骤,每次遍历都将最大的元素移动到数组的末尾。
  5. 最终,数组将按照升序(或降序)排列。
java 复制代码
public class BubbleSort {
    public static void bubbleSort(int[] arr) {
        int n = arr.length;
        for (int i = 0; i < n - 1; i++) {
            for (int j = 0; j < n - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    // 交换arr[j]和arr[j+1]
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
    }

    public static void main(String[] args) {
        int[] arr = {64, 34, 25, 12, 22, 11, 90};
        bubbleSort(arr);
        System.out.println("排序后的数组:");
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + " ");
        }
    }
}
相关推荐
To_OC6 小时前
LC 1 两数之和:面试第一道必考题,暴力解法直接被面试官 pass
javascript·算法·leetcode
用户484526255828 小时前
搜索旋转排序数组:必有一侧是有序的
排序算法
用户484526255828 小时前
翻转二叉树:前序和后序的写法完全一样
排序算法
用户484526255828 小时前
对称二叉树:左子树的左和右子树的右对比
排序算法
用户1285261160210 小时前
我把祖传Java项目重构后,接口响应从3s砍到了200ms,只改了这几行代码
java
鱼鱼不愚与11 小时前
《原来如此 | 第01期:为什么导航软件能预测红绿灯倒计时?》
算法
Linsk11 小时前
组件 = 模板 + 业务逻辑
java·前端·vue.js
星沉远浦11 小时前
用Gemini高效解决Java代码报错难以定位的问题
java
用户2986985301415 小时前
Word 文档字符级格式化:Java 实现方案详解
java·后端
复杂网络15 小时前
论最小 Agent 计算机的形态
算法