冒泡排序

104 阅读1分钟

原理:

  • 每次比较两个相邻的元素,将较大的元素交换至右端。

思路:

  • 每次冒泡排序操作都会将相邻的两个元素进行比较,看是否满足大小关系要求,如果不满足,就交换这两个相邻元素的次序,一次冒泡至少让一个元素移动到它应该排列的位置,重复N次,就完成了冒泡排序。
  • i从0开始,i与i+1比较,如果i>i+1,那么就互换
  • i不断增加,直到i<n-1(n是数组元素的个数,n-1是数组已经最后一个元素) ,
  • 一趟下来,可以让数组元素中最大值排在数组的最后面

代码实例:

    public static String sort(int[] arrays) {

        // 外层循环-排序趟数
        for (int i = 0; i < arrays.length - 1; i++) {

            for (int j = 0; j < arrays.length - i - 1; j++) {
                if (arrays[j] > arrays[j + 1]) {
                    temp = arrays[j];
                    arrays[j] = arrays[j + 1];
                    arrays[j + 1] = temp;
                    isChange = true;
                }
            }
        }

        return Arrays.toString(arrays);
    }