演示一下冒泡排序的实际流程:
假设有一个无序序列 { 4. 3. 1. 2, 5 }
第一趟排序:通过两两比较,找到第一大的数值 5 ,将其放在序列的最后一位。
第二趟排序:通过两两比较,找到第二大的数值 4,将其放在序列的倒数第二位。
第三趟排序:通过两两比较,找到第三大的数值 3 ,将其放在序列的倒数第三位。
至此,所有元素已经有序,排序结束。
public class sort {
//{12,23,32,1,332,42,96,321}
public static void main(String[] args) {
int temp=0;
int[] list={12,23,32,1,332,42,96,321};
for(int i=0;i<list.length-1;i++){
for(int j=list.length-1;j>i;j--){
if(list[j-1]>list[j]){
temp=list[j-1];
list[j-1]=list[j];
list[j]=temp;
}
}
}
for (int i=0;i<list.length;i++) {
System.out.print("\t");
System.out.print(list[i]);
}
}
}
结果:
1 12 23 32 42 96 321 332