java的冒泡排序算法

冒泡排序是一种简单的排序算法,通过重复遍历待排序序列,比较相邻元素并在必要时交换位置,最终实现排序。以下是Java实现的详细说明:

核心原理

  • 比较相邻元素‌:从序列第一个元素开始,逐对比较相邻元素的大小。
  • 交换条件‌:若前一个元素大于后一个元素(升序排序),则交换两者位置。
  • 重复迭代‌:每轮排序将最大元素"冒泡"到序列末尾,后续迭代逐步减少已排序的元素。

代码实现

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]) {

// 交换元素位置

int temp = arr[j];

arr[j] = arr[j + 1];

arr[j + 1] = temp;

}

}

System.out.println("第" + (i + 1) + "趟:" + Arrays.toString(arr));

}

}

时间复杂度

  • 最佳情况‌:O(n)(数组已排序)
  • 平均情况/最坏情况‌:O(n²)(数组完全逆序)
相关推荐
Stanford_11063 小时前
【2026新年启程】学习之路,探索之路,技术之路,成长之路……都与你同行!!!
前端·c++·学习·微信小程序·排序算法·微信开放平台
Jim-2ha03 小时前
【JavaScript】常见排序算法实现
javascript·算法·排序算法
谈笑也风生18 小时前
经典算法题型之排序算法(三)
java·算法·排序算法
盖世灬英雄z1 天前
数据结构与算法学习(一)
c++·学习·排序算法
苏宸啊1 天前
排序(一)插入 希尔 选择 堆排 冒泡
算法·排序算法
谈笑也风生1 天前
经典算法题型之排序算法(四)
数据结构·算法·排序算法
surtr12 天前
常见排序模板(冒泡排序,希尔排序,堆排序,归并排序,快速排序)
数据结构·算法·贪心算法·排序算法
mu_guang_2 天前
算法图解2-选择排序
数据结构·算法·排序算法
蒙奇D索大2 天前
【数据结构】排序算法精讲 | 快速排序全解:高效实现、性能评估、实战剖析
数据结构·笔记·学习·考研·算法·排序算法·改行学it
发疯幼稚鬼3 天前
图的存储与拓扑排序
数据结构·算法·排序算法·拓扑学