冒泡排序一点小优化
import java.util.Arrays;
public class Test1 {
public static void main(String[] args) {
long[] longs={2,1,5,4,8,12,11,23,25,21};
long[] longs1={25,21,41,58,45,78,89,56,25,12,23,14};
bubbleSort(longs);
bubbleSort(longs1);
}
public static void bubbleSort(long[] arr){
long temp = 0;
for(int i = 0;i<arr.length-1;i++){
boolean flag=true;
for (int j = 0;j<arr.length-1-i;j++){
if (arr[j]>arr[j+1]){
temp = arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
System.out.println(Arrays.toString(arr));
flag=false;
}
}
System.out.println("==========================");
if(flag==true){
System.out.println("冒泡排序结束");
break;
}
}
}
}
结果
[1, 2, 5, 4, 8, 12, 11, 23, 25, 21]
[1, 2, 4, 5, 8, 12, 11, 23, 25, 21]
[1, 2, 4, 5, 8, 11, 12, 23, 25, 21]
[1, 2, 4, 5, 8, 11, 12, 23, 21, 25]
==========================
[1, 2, 4, 5, 8, 11, 12, 21, 23, 25]
==========================
==========================
冒泡排序结束
[21, 25, 41, 58, 45, 78, 89, 56, 25, 12, 23, 14]
[21, 25, 41, 45, 58, 78, 89, 56, 25, 12, 23, 14]
[21, 25, 41, 45, 58, 78, 56, 89, 25, 12, 23, 14]
[21, 25, 41, 45, 58, 78, 56, 25, 89, 12, 23, 14]
[21, 25, 41, 45, 58, 78, 56, 25, 12, 89, 23, 14]
[21, 25, 41, 45, 58, 78, 56, 25, 12, 23, 89, 14]
[21, 25, 41, 45, 58, 78, 56, 25, 12, 23, 14, 89]
==========================
[21, 25, 41, 45, 58, 56, 78, 25, 12, 23, 14, 89]
[21, 25, 41, 45, 58, 56, 25, 78, 12, 23, 14, 89]
[21, 25, 41, 45, 58, 56, 25, 12, 78, 23, 14, 89]
[21, 25, 41, 45, 58, 56, 25, 12, 23, 78, 14, 89]
[21, 25, 41, 45, 58, 56, 25, 12, 23, 14, 78, 89]
==========================
[21, 25, 41, 45, 56, 58, 25, 12, 23, 14, 78, 89]
[21, 25, 41, 45, 56, 25, 58, 12, 23, 14, 78, 89]
[21, 25, 41, 45, 56, 25, 12, 58, 23, 14, 78, 89]
[21, 25, 41, 45, 56, 25, 12, 23, 58, 14, 78, 89]
[21, 25, 41, 45, 56, 25, 12, 23, 14, 58, 78, 89]
==========================
[21, 25, 41, 45, 25, 56, 12, 23, 14, 58, 78, 89]
[21, 25, 41, 45, 25, 12, 56, 23, 14, 58, 78, 89]
[21, 25, 41, 45, 25, 12, 23, 56, 14, 58, 78, 89]
[21, 25, 41, 45, 25, 12, 23, 14, 56, 58, 78, 89]
==========================
[21, 25, 41, 25, 45, 12, 23, 14, 56, 58, 78, 89]
[21, 25, 41, 25, 12, 45, 23, 14, 56, 58, 78, 89]
[21, 25, 41, 25, 12, 23, 45, 14, 56, 58, 78, 89]
[21, 25, 41, 25, 12, 23, 14, 45, 56, 58, 78, 89]
==========================
[21, 25, 25, 41, 12, 23, 14, 45, 56, 58, 78, 89]
[21, 25, 25, 12, 41, 23, 14, 45, 56, 58, 78, 89]
[21, 25, 25, 12, 23, 41, 14, 45, 56, 58, 78, 89]
[21, 25, 25, 12, 23, 14, 41, 45, 56, 58, 78, 89]
==========================
[21, 25, 12, 25, 23, 14, 41, 45, 56, 58, 78, 89]
[21, 25, 12, 23, 25, 14, 41, 45, 56, 58, 78, 89]
[21, 25, 12, 23, 14, 25, 41, 45, 56, 58, 78, 89]
==========================
[21, 12, 25, 23, 14, 25, 41, 45, 56, 58, 78, 89]
[21, 12, 23, 25, 14, 25, 41, 45, 56, 58, 78, 89]
[21, 12, 23, 14, 25, 25, 41, 45, 56, 58, 78, 89]
==========================
[12, 21, 23, 14, 25, 25, 41, 45, 56, 58, 78, 89]
[12, 21, 14, 23, 25, 25, 41, 45, 56, 58, 78, 89]
==========================
[12, 14, 21, 23, 25, 25, 41, 45, 56, 58, 78, 89]
==========================
==========================
冒泡排序结束