基本選択法のサンプルコード
 引数で配列を渡すことによって、その配列を基本選択法でソートするです。
 1:
 2:
 3:
 4:
 5:
 6:
 7:
 8:
 9:
 10:
 11:
 12:
 13:
 14:
 15:
 16:
 17:
 18:
 19:
 20:
 21:
 22:
 23:
 24:
 25:
 26:
 27:
 28:
 29:
 30:
 31:
 32:
 33:
 34:
 35:
 36:
 37:
 38:
 39:
class SelectionSortTest{
    public static void main(String[] args){
        int[] arr = {4, 8, 0, 2, 3, 1, 5, 7, 6, 9};

        System.out.print("ソート前:");
        arrayPrintln(arr);

        selectionSort(arr);

        System.out.print("ソート後:");
        arrayPrintln(arr);
    }

    //基本選択法(セレクションソート)*************
    public static void  selectionSort(int[] arr){
        for(int i=0; i<arr.length-1; i++){
            int min = i;
            for(int j=i+1; j<arr.length; j++){
                if(arr[min] > arr[j]){
                    min = j;
                }
            }

            if(min != i){
                int tmp  = arr[min];
                arr[min] = arr[i];
                arr[i]   = tmp;
            }
        }
    }

    //配列の値を出力するメソッド*******************
    public static void arrayPrintln(int[] arr){
        for(int i=0; i<arr.length; i++){
            System.out.print(arr[i] + " ");
        }
        System.out.println("");
    }
}

TOPに戻る   Javaアルゴリズムに戻る