冒泡排序
时间复杂度O(n^2)空间复杂度O(1)
思路:每次碰到大的就交换顺序,共需排序n-1次
public static void bubbleSort_(int[] ints){
int length = ints.length;
Boolean flag = false;//排序优化,若在某次循环中一次都没有交换则已排序完成
for (int i = 0; i < length; i++) {
for (int j = 0; j < length - 1 - i; j++) {
if(ints[j] > ints[j + 1]){
//交换
int temp = ints[j];
ints[j] = ints[j + 1];
ints[j + 1] = temp;
flag = true;
}
}
System.out.println(Arrays.toString(ints));
if(flag){
flag = false;//重置
}else {
break;//一次都没有交换则已是最优排序,退出循环
}
}
}