当前位置: 首页 > article >正文

冒泡排序算法介绍以及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

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


http://www.kler.cn/a/418263.html

相关文章:

  • js原型、原型链和继承
  • [Linux] 进程间通信——匿名管道命名管道
  • python股票数据分析(Pandas)练习
  • K8s调度器扩展(scheduler)
  • 量化的8位LLM训练和推理使用bitsandbytes在AMD GPUs上
  • 2024.11.29(单链表)
  • SQL调优分析200倍性能提升
  • Vue3+Echarts+echarts-wordcloud插件创建词云图
  • Docker命令总结
  • sys.stdout和sys.stdout.buffer
  • pnpm安装electron出现postinstall$ node install.js报错
  • 【中间件】Redis
  • 大模型开发和微调工具Llama-Factory-->量化1(GPTQ 和 AWQ)
  • Java并发07之ThreadLocal
  • fatal error:boostdesc_bgm.i:no such file or directory
  • 【学习笔记】基于RTOS的设计中的堆栈溢出(Stack Overflow)-第1部分
  • 前端项目中,通过命令行传入自定义参数
  • 排序-多语言
  • MySQL 利用JSON特性完成复杂数据存储和查询
  • 详解高斯消元
  • Axure PR 9 随机函数 设计交互
  • 每天五分钟机器学习:平行和重合
  • MySQL Workbench 数据库建模详解:从设计到实践
  • <三>51单片机PWM开发SG90和超声测距
  • C++中 测算 不定长数据 的 长度 的方法
  • 追寻红色足迹,领略西湖古韵今风|中共杭州美创科技有限公司支部党建活动纪实