冒泡排序算法介绍以及java实现

冒泡排序是一种简单的排序算法,它重复地走访过要排序的元素列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。重复地进行这个操作直到整个序列都是有序的。

冒泡排序算法的基本思想是:比较相邻的两个元素,如果前面的元素大于后面的元素,则交换这两个元素;一轮比较下来,序列中最大的元素被交换到了最后一个位置;然后再对剩下的元素重复进行同样的操作,直到整个序列都是有序的。

下面是冒泡排序的Java实现代码:

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] + " ");
        }
    }
}

这段代码中的bubbleSort()方法实现了冒泡排序算法,接受一个整数数组作为参数,并对数组进行排序。在main()方法中,我们声明了一个整数数组arr,并调用bubbleSort()方法对数组进行排序,最后输出排序后的结果。

运行以上代码,输出的结果为:

复制代码
排序后的数组:
11 12 22 25 34 64 90

可以看到,冒泡排序算法对数组进行了升序排序。

相关推荐
张哈大11 分钟前
【 java 虚拟机知识 第二篇 】
java·开发语言·jvm·笔记
知其然亦知其所以然13 分钟前
只会写 Mapper 就想进大厂?MyBatis 原理你真懂了吗?
java·后端·面试
九月十九21 分钟前
java操作word里的表格
java·word
北京_宏哥21 分钟前
🔥《刚刚问世》系列初窥篇-Java+Playwright自动化测试-20- 操作鼠标拖拽 - 上篇(详细教程) 草稿
java·前端·前端框架
%d%d231 分钟前
Unable to make field long java.nio.Buffer.address accessible:
java·开发语言·nio
DarkChunk34 分钟前
[BUG]Cursor C++扩展不支持
算法
学无止境的子戌34 分钟前
RAG、FunctionCall和MCP的简单介绍
java·人工智能·后端
Lanqing_076036 分钟前
京东开放平台获取京东商品详情API接口操作解答
java·前端·python·api·电商·电商数据
Lenyiin36 分钟前
第 87 场周赛:比较含退格的字符串、数组中的最长山脉、一手顺子、访问所有节点的最短路径
java·c++·python·leetcode·周赛·lenyiin
forestsea38 分钟前
Spring 路由匹配机制详解:时间复杂度从 O(n) 降至 O(log n)
java·后端·spring·路由匹配