軟體測試學習教程——Java實現氣泡排序

千鋒教育官方發表於2019-09-04

Java 實現氣泡排序

1 )原理:

  1 、從第一個資料開始,與第二個資料相比較,如果第二個資料小於第一個

資料,則交換兩個資料的位置。

  2 、指標由第一個資料移向第二個資料,第二個資料與第三個資料相比較,

如果第三個資料小於第二個資料,則交換兩個資料的位置。

  3 、依此類推,完成第一輪排序。第一輪排序結束後,最大的元素被移到了

最右面。

  4 、依照上面的過程進行第二輪排序,將第二大的排在倒數第二的位置。

  5 、重複上述過程,沒排完一輪,比較次數就減少一次。

6 N 個資料排序,需要進行 N-1 輪排序;第 i 輪排序需要的比較次數為 N-i 次。

2 )編碼思路:

需要兩層迴圈,第一層迴圈i 表示排序輪數,第二層迴圈 j 表示比較的次數。

3 程式碼實現:

/**

 * 氣泡排序

 */

public class BobSort {

    

    private int[] array;

    private int length;

    

    /**

     * 建構函式

     */

    public BobSort (int[] array){

        this.array = array;

        this.length = array.length;

    }

    

    /**

     * 列印陣列中資料

     */

    public void display(){

        for(int i : array){

            System.out.print(i+" ");

        }

        System.out.println();

    }

    

    /**

     * 氣泡排序

     */

    public void bobSort(){

        for(int i=0;i<length-1;i++){// 排序輪數

            for(int j=0;j<length-1-i;j++){// 比較次數

                if(array[j]>array[j+1]){

                    int temp = array[j+1];

                    array[j+1] = array[j];

                    array[j] = temp;

                }

            }

        }

    }

    

    /**

     * 測試方

     */

    public static void main(String[] args){

        int[] array = { 3 , 1 ,2,6,10};

        BobSort bobSort = new BobSort(array);

        System.out.println(" 排序前的資料為: ");

        bobSort.display();

        bobSort.bobSort();

        System.out.println(" 排序後的資料為: ");

        bobSort.display();

    }

}

執行結果為:

排序前的資料為:

3 1 2 6 10

排序後的資料為:

1 2 3 6 10

 

最後:

關注回覆“軟體測試”即可獲取軟體測試全套影片教程!


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69914734/viewspace-2655997/,如需轉載,請註明出處,否則將追究法律責任。

相關文章