2002年8月2日

氣泡式排序法

氣泡式排序就是利用比大小的方式將一組數字,和第一順位的值相比,若數值比第一各數字小的,就和第一各數交換,經過一回合後,再和第二各值以相同的方式循環,一直到排出來為止。

當第一回合結束後,就會找出數列內最小的值,放在第一各位置上,如下:

  • 第一回合,所有的數都和第一各值"4"相比較

4

6

5

2

3

於是,46相比的結果,4比六小,所以放在原位;然後4再和5相比,一樣是4比較小,一直到42相比大小時,2比四小,所以42的位置對調變成:

2

6

5

4

3

然後再以2和下一各數字3相比,完成第一各回合;

  • 第二回合,拿第二各數字"6"和後面的數值相比較

2

6

5

4

3

第一各是65的比較,56小,所以56調換位置,再來54比較,然後再調位置,就這樣一直延續下去,直到所有的值都對完一次

2

5

6

4

3

所以總共比大小的次數會是 (n-1)*(n-2)次,自己算算看吧,下面是用java寫的的範例

  • 範例

class sort {

public static void main(String args[]){

int arr[]={5,3,4,2,6,81,1};

System.out.print ("原來的陣列:");

for(int i=0;i

System.out.print(arr[i]+ " ");

}

for(int j=0;j

for(int k=j+1;k

if(arr[j]>arr[k]){

int temp;

temp=arr[k];

arr[k]=arr[j];

arr[j]=temp;

}

}

}

System.out.print ("排序後的陣列:");

for(int i=0;i

System.out.print(arr[i]+ " ");

}

}

}

沒有留言:

張貼留言

精選文章

利用Selenium IDE進行UI測試

安裝與執行 Selenium IDE是Firefox的一個plugin,用來做UI的自動測試:下載網址為http://docs.seleniumhq.org/download/ 安裝後,點一下firefox 的工具 -> Selenium IDE ,就會...