1. 程式人生 > 實用技巧 >排序回顧 1

排序回顧 1

/**
 * @Author: zhangQi
 * @Date: 2020-08-02 20:19
 */
public class SortTest {

    public static void main(String[] args) {
        /*Bubble Sort 氣泡排序 for從陣列最大下標開始,逐次遞減, 內層for每次兩兩j,j+1對比,每次兩兩對比
        兩兩對比後,再從前面開始*/
        int[] arr = {3, 1, 6, 2, 5};
        int len = arr.length;
        for (int i = len - 1; i > 0; i--) {
            for (int j = 0; j < i; j++) {
                if (arr[j] > arr[j + 1]) {
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }

        for (int ele : arr){
            System.out.print(ele+" ");
        }
        System.out.println();
        System.out.println("===================");

        //選擇排序
        /*for從i為0開始遞增,直到最大下標,內層j從i+1開始,j小於陣列長度遞增
        每次將選定下標與之後的每一個下標的元素對比*/
        int[] arr2 = {4,31,14,1,5,3};
        int len2 = arr2.length;
        for(int i=0;i<len2-1;i++){
            for(int j=i+1;j<len2;j++){
                if(arr2[i]>arr2[j]){
                    int temp = arr2[j];
                    arr2[j] = arr2[i];
                    arr2[i] =temp;
                }
            }
        }
        for(int ele :arr2){
            System.out.print(ele+" ");
        }
    }


}


https://www.cnblogs.com/PythonLearner/p/13424051.html 動圖