从第一个数开始,经过两两比较,将最大的数放在最后。java
这是第一轮肯定了最后最大值的位置,以后再对前边的数重复进行上述操做,依次肯定最终位置
结果如图:ide
public static void bubbleSort(int[] array) { for (int i = 0; i < array.length - 1; i++) { // 无序区间是 [0, arrya.length - i) boolean sorted = true; for (int j = 0; j < array.length - i - 1; j++) { if (array[j] > array[j + 1]) { swap(array, j, j + 1); sorted = false; } } if (sorted) { break; } } }