氣泡排序就是將陣列的前乙個元素 與後乙個元素比較,把如果前乙個數大於後乙個數,則將其調換位置。這樣增加a下標,迴圈一次,可以將最大值放在最後面。
這樣每迴圈一次就把最大的數排列到後面,例如:兩個數排列支迴圈1次,兩個數排列只迴圈兩次,所以n個數迴圈要排列n-1次。
然後迴圈 (陣列大小的-1)次數 ,就完成排序。 每次迴圈都取到最大值,所以以後的迴圈就不必遍歷到最後c-i+1 ,優化演算法結果為:
package test;
public class num ;
int l=a.length ;
for(int i=0;ia[j+1])
}} for(int i=0;i顯示結果為:
這時,排序演算法就結束了。如果像減少演算法執行時間,也可以優化演算法。
我們知道每迴圈一次最大數在最後,所以第二次迴圈我們就沒必要去比較最後兩個數。因此,
內迴圈
可以表示為
for(int j=0;j輸出結果沒有變化。
同理,由大到小排列優化演算法修改為:
氣泡排序 氣泡排序法
冒泡法是一種簡單的排序方法,它的實現非常簡單。首先對n個專案進行掃瞄,比較相領兩個專案的大小,若發現違背大小次序則進行互換,由此可以使n個專案中的最大者換到最後。然後對剩下的未排序好的專案再進行掃瞄,使它們的最大者換到表的最後。以此類推,直到將表全部排序好為止。這種排序方法,每遍掃瞄以後,都縮短了待...
排序 氣泡排序法
氣泡排序法,是最簡單的一種排序方法,從第乙個位置開始與相鄰位置比較,判斷是否需要交換位子。第一趟從第乙個位置開始,直到最後乙個位置,a n 1 確定最大 以公升序為例子 的數放在最後一位,a n 1 第二趟,繼續從第乙個位置開始,倒數第二位,a n 2 確定倒數第二大的數在倒數第二位a n 2 演算...
氣泡排序法
從小到大排序 int myarray new int 取長度最長的片語 冒泡法 for int j 1 jfor int i 0 i 如果 myarray i myarray i 1 則 myarray i 上浮一位 if myarray i myarray i 1 從大到小排序 int myarr...