背景
排序算法比较常见,下面我们来用java实现一下
代码+注释
public class BubbleSort {
public static void main(String[] args) {
int[] waitToSortArray = new int[]{2, 3, 9, 0, 27, 15, 2, 32};
bubbleSort(waitToSortArray);
for (int value : waitToSortArray) {
System.out.println(value);
}
}
public static void bubbleSort(int[] array) {
if (array == null || array.length == 0) {
return;
}
int size = array.length;
int tmp;
// 一共有size - 1组参与排序,因为比较是发生在两两个数之间的,所以必然会比size少一个
for (int i = 0; i < size - 1; i++) {
// 每一组比较,需要和size - 1 - i个数进行比较,i表示已冒泡的数量
for (int j = 0; j < size - 1 - i; j++) {
if (array[j] < array[j + 1]) {
tmp = array[j];
array[j] = array[j + 1];
array[j + 1] = tmp;
}
}
}
}
}
动态图如下