Loading

冒泡排序

public void sort_1(int[] arr) {
    int len = arr.length;

    for (int i = 0; i < len - 1; i++) {
        System.out.println(Arrays.toString(arr));
        boolean swap = false;
        for (int j = 0; j < len - 1 - i; j++) {
            if (arr[j] > arr[j + 1]) {
                swap(j, j + 1, arr);
                swap = true;
            }
        }
        if (!swap) {
            break;
        }
    }
}

public void sort_2(int[] arr) {
    int m = arr.length - 1;
    while (m > 0) {
        System.out.println(Arrays.toString(arr));
        int index = 0;
        for (int i = 0; i < m; i++) {
            if (arr[i] > arr[i + 1]) {
                swap(i, i + 1, arr);
                index = i;
            }
        }
        m = index;
    }
}
posted @ 2022-07-31 18:46  沿途有余弦  阅读(24)  评论(0)    收藏  举报