如果有n个数据进行排列,总共需要比较n-1次
每次比较完,下一次的比较就会少一个数据参与
package Demo020;
public class Paixu {
public static void main(String[] args) {
int [] arr ={23,43,10,33,68};
System.out.println("排序前:"+arrayToString(arr));
for (int x=0;x< arr.length;x++){//总共要做x次比较
for (int i=0;i< arr.length-1-x;i++){//每次比较做的动作
if (arr[i]>arr[i+1]){
int temp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = temp;
}
}
}
System.out.println("排序后:"+arrayToString(arr));
}
public static String arrayToString(int [] arr){
StringBuilder sb = new StringBuilder();
sb.append("[");
for (int i=0;i< arr.length;i++){
if (i== arr.length-1){
sb.append(arr[i]);
}else {
sb.append(arr[i]).append(",");
}
}
sb.append("]");
String s = sb.toString();
return s;
}
}
运行结果: