排序算法-選擇排序

選擇排序 是這樣的原理
第一次排序將 最小的值 放在第一位
第二次排序將 第二小的放在第二位
之後 依次把第i小的 放在 i 位置上

我覺得最重要的一點是 如何拿到最小的那個數的 下標 這是關鍵

第一次外部循環 時 將第0位作爲下標index
然後 內部循環 比較第1位 的大小 和 index位置的大小
如果發現更小的數,就把這個數的下標記錄給index 一直找到最小的數的 那個下標

第二次循環 時候 第一位已經是最小的數了 就從第二位開始 找最小的數 下標給index

最後交換位置 就達到效果 。

代碼如下:


    public static void main(String[] args) {
        int[] arr = {34, 45, 12, 89, 25, 76, 44, 90, 1, 62, 59};
        for (int i = 0; i < arr.length - 1; i++) {
            int temp = 0;
            int index = i;
            for(int j =i+1;j<arr.length;j++){
                if(arr[j]<arr[index]){
                    index=j;
                }
            }
            temp = arr[i];
            arr[i] = arr[index];
            arr[index] = temp;
        }
        System.out.println(Arrays.toString(arr));
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章