Java 冒泡排序,排序算法优化
public static void main(String[] args) {
// 初始化一个数组
int[] arr = {12, 34, 22, 4, 5, 1, 0, 88, 3};
// 定义数组长度
int arrLength = arr.length - 1;
// 外层开始遍历
for (int j = 0; j < arrLength; j++) {
// 定义是否排序成功
boolean ok = true;
// 开始冒泡。。。
for (int i = 0; i < arrLength - j; i++) {
if (arr[i] > arr[i + 1]) {
int max = arr[i];
int min = arr[i + 1];
arr[i] = min;
arr[i + 1] = max;
ok = false;
}
System.out.println(Arrays.toString(arr));
}
// 如果排序成功,结束循环
if (ok) {
break;
}
System.out.println("----------------------------------");
}
}