上篇博客我們講了選擇排序,不難發現,當數據較多時選擇排序的效率就很低了。那麼有沒有另外一種排序的方法能夠提升一下效率呢?答案是確定的。下面咱們來說一下冒泡排序。spa
冒泡排序也是經過兩重循環,外層循環和選擇排序同樣經過n-1次找最小(或最大)值,只是內循環的比較實現方式不一樣。它是經過n-1次找最大值得方式實現排序的,可是找最大值的方法也不一樣於選擇排序。code
冒泡排序找最大值的方式是從第一個元素開始,每相鄰的兩個元素依次比較,若是前面的數據元素小於後面的,則二者交換。一趟排序後,最大的元素就被放到了最後的位置。剩餘的n-1個元素重複上述過程。blog
代碼以下:排序
1 for(i=0;i<=n-1;i++) 2 { 3 for(j=0;j<=n-i-2;j++) 4 { 5 if(a[j]>a[j+1]) 6 { 7 t=a[j]; 8 a[j]=a[j+1]; 9 a[j+1]=t; 10 } 11 } 12 }