diff --git a/codes/adminvv/9622480.java b/codes/adminvv/9622480.java new file mode 100644 index 0000000000000000000000000000000000000000..1f922ea0ee741af9abe353672159a3bf4edc6885 --- /dev/null +++ b/codes/adminvv/9622480.java @@ -0,0 +1,28 @@ +/** + * 冒泡排序函数 + * aa bb cc + * @param a 待排序的数组 + * @param n 待排序的数组长度 + */ +public static void bubbleSort(int[] a, int n) { + // 外层循环控制排序的轮数 + for (int i = 0; i < n - 1; i++) { + // 标志位,用于检测是否发生交换 + boolean swapped = false; + // 内层循环进行相邻元素的比较和交换 + for (int j = 0; j < n - 1 - i; j++) { + if (a[j] > a[j + 1]) { + // 交换 a[j] 和 a[j + 1] + int temp = a[j]; + a[j] = a[j + 1]; + a[j + 1] = temp; + swapped = true; // 标记发生了交换 + } + } + // 如果某一轮没有发生交换,说明数组已经有序,提前退出 + if (!swapped) { + break; + } + } +} // end +