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]) {
                    swap(arr, j, j + 1);
                }
            }
        }
    }

    private static void swap(int[] arr, int i, int j) {
        int temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;
    }
}

使用示例:

int[] arr = {5, 2, 9, 1, 5, 6};
BubbleSort.bubbleSort(arr);
System.out.println(Arrays.toString(arr)); // 输出 [1, 2, 5, 5, 6, 9]

该实现使用了双重循环进行冒泡排序,外层循环控制排序轮数,内层循环控制每轮比较和交换操作。在每轮排序中,将相邻的两个元素进行比较,如果它们的顺序不正确,就交换它们的位置,直到将整个数组都遍历一遍,完成排序。

swap()方法用于交换数组中两个元素的位置。