冒泡排序
原理:依次比較相鄰元素,将最大元素吐到右側(ps:冒泡排序是從小到大對元素進行排序)
冒泡由來:在每一輪進行完比較後将最大元素吐到最右邊,看上去像是在吐泡泡,是以叫做冒泡排序
代碼圖解
import java.util.Arrays;
public class 冒泡排序 {
public static void main(String[] args) {
int a[]= {2,1,9,2,6};
int temp;
for (int i = 0; i<a.length-1; i++) { //a.length-1 循環次數不越界
boolean flag=false; //flag=false 預設本次循環不進行冒泡
for (int j = 0; j < a.length-i-1; j++) { //a.length-i-1 本次冒泡比較的個數
if(a[j]>a[j+1]) { //定義變量temp進行指派排序
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
flag=true; //若相鄰元素交換位置,flag=true
}
}
System.out.println(Arrays.toString(a));
if(!flag) break; //!flag 說明flag==false,本次循環沒有吐泡泡,就終止整個循環,不再吐泡泡
}
}
}