diff --git a/codes/19205892.java b/codes/19205892.java new file mode 100644 index 0000000000000000000000000000000000000000..757bca14be8b81a6bf4aaf028f2881827a09939b --- /dev/null +++ b/codes/19205892.java @@ -0,0 +1,23 @@ +/** + * 冒泡排序函数 +/** + * 该函数通过多次遍历数组,将较大的元素逐渐移动到数组的末尾,从而实现排序。 + * @param a 待排序的数组 + * @param n 待排序的数组长度 + */ +public static void bubbleSort(int[] a, int n) { + // 外层循环控制遍历的轮数,最多需要n-1轮 + for (int i = 0; i < n - 1; i++) { + // 内层循环控制每轮比较的次数 + // 每轮比较后,最大的元素会被移动到数组末尾,因此可以减少比较次数 + for (int j = 0; j < n - 1 - i; j++) { + // 如果前一个元素大于后一个元素,则交换它们的位置 + if (a[j] > a[j + 1]) { + int temp = a[j]; + a[j] = a[j + 1]; + a[j + 1] = temp; + } + } + } +} +