一、兩兩比較,大數(小數)放後面;——>循環後最末尾數爲最大數(最小數)java
二、添加外部循環,使數列每一個位置相對前面均爲最大值(最小值);code
//冒泡排序 int[] a={23,55,11,656,10,3,57,99,22}; //外部循環,按位置逐步選出相比前面的最小值 for(int j=0;j<a.length-1;j++){ //內層循環兩兩比較選出最小值 for(int i=0;i<a.length-1-j;i++){ if(a[i]<a[i+1]){ int t=a[i]; a[i]=a[i+1]; a[i+1]=t; } } } for(int k=0;k<a.length;k++){ System.out.println(a[k]); }
輸出結果:blog
656 99 57 55 23 22 11 10 3