冒泡排序,排序算法优化

public static void  main(String[] args) {
    // 初始化一个数组
    int[] arr = {12, 34, 22, 4, 5, 1, 0, 88, 3};
    // 定义数组长度
    int arrLength = arr.length - 1;
    // 外层开始遍历
    for (int j = 0; j < arrLength; j++) {
        // 定义是否排序成功
        boolean ok = true;
        // 开始冒泡。。。
        for (int i = 0; i < arrLength - j; i++) {
            if (arr[i] > arr[i + 1]) {
                int max = arr[i];
                int min = arr[i + 1];
                arr[i] = min;
                arr[i + 1] = max;
                ok = false;
        }
        System.out.println(Arrays.toString(arr));
    }
    // 如果排序成功,结束循环
    if (ok) {
        break;
    }
    System.out.println("----------------------------------");
    }
}

posted @ 2018-10-13 16:36  achnly  阅读(327)  评论(0编辑  收藏  举报