这种是改良版的冒泡排序。
int[] arr = {6, 4, 2, 8, 7, 9, 3, 1, 5};
boolean isCount = false;
//内循环决定需要循环几次
for(int i = 0 ; i < arr.length && isCount == false; i++){
//假设数组有序
isCount = true;
//有序区的数据不再参与排序,提高排序效率
for(int j = 0 ; j < arr.length - i - 1; j++){
//核心算法,两两比较,判断,交换,
if(arr[j] > arr[j + 1]){
int temp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = temp;
//确定无序
isCount = false;
}
}
}
//输出数组
for(int i = 0 ; i < a.length; i++)
System.out.println(a[i]);
}