思路

  1. 顾名思义,冒泡排序表示最大值或者最小值像是泡泡一样冒到最上面,因此每次遍历确定一个元素的最终位置,即当前范围的最大/最小值
  2. 确定一个元素位置后,剩下的元素再依次根据第一点进行排序
   public int[] sort(int[] arrays) {
        int len = arrays.length;
        // 最外层
        for (int i = len - 1  ; i >= 0; i -- ) {
	    // 剩下的无序元素查找最大值
            for (int j = 0; j < i ; j ++) {
		// 比较相邻位置,让最大值逐渐上移
                if (arrays[j] > arrays[j+1]) {
                    int tmp = arrays[j];
                    arrays[j] = arrays[j+1];
                    arrays[j+1] = tmp;
                }
            }
        }
        return arrays;
    }

Q.E.D.


每一个平凡的日常都是连续的奇迹