优化冒泡排序
需求 需要写一个优化后的冒泡排序。 解决 为了简化代码,并且省去控制用的 flag,可以每次只排列剩余中的最小的,这 样可以使用 i 来同时控制排列的范围和当前最小的位置,使用 j 来控制进行比较的位置。 需要注意: i 的表示控制排列的范围和当前最小位置,所以 i 的取值不包含最后一个数,毕竟比较至少要有两个数才能比较。 j 是进行比较的数值,所以 j 是从 i 的后一个数开始,直到最后一个数。 public static void bubbleSort(float[] src) { for (int i = 0; i < src.length - 1; i++) { for (int j = i + 1; j < src.length; j++) { if (src[i] > src[j]) { float tmp = src[i]; src[i] = src[j]; src[j] = tmp; } } } }