排序演算法工具類

來源:互聯網
上載者:User

標籤:mat   最大值   @param   generate   ++   工具類   數組   mes   system   

/** * 排序演算法工具類 */public class GeneratedArray {    /**     *     * 產生隨機長度數組[min,max)     *     * @param min 最小值     * @param max 最大值     * @param num     * @return     */    public static int[] randomGeneratedArray(int min, int max, int num) {        //斷言判斷        assert max>min:"數組產生範圍指定有誤";        int[] arr = new int[num];        for (int i = 0; i < arr.length; i++) {            //隨機產生[min,max)範圍內的數字,並且存放到數組中            arr[i] = (int) (Math.random() * (max - min)) + min;        }        return arr;    }    /**     * 產生一個近乎有序的數組     * @param n 數組產固定     * @param swapTimes 隨機交換多少個數字     * @return arr     */    public static int[] generateNearlyOrderedArray(int n, int swapTimes){        int[] arr = new int[n];        for( int i = 0 ; i < n ; i ++ )            arr[i] = i;        for( int i = 0 ; i < swapTimes ; i ++ ){            int a = (int)(Math.random() * n);            int b = (int)(Math.random() * n);            int t = arr[a];            arr[a] = arr[b];            arr[b] = t;        }        return arr;    }    /**     * 列印數組     * @param arr 數組     */    public static void printArray(int[] arr){        for(int i:arr){            System.out.print(i+",");        }        System.out.println();    }    /**     * 判斷數組是否有序     * @param arr     */    public static void isSorted(int[] arr){        for(int i = 0;i<arr.length-1;i++){            if(arr[i]>arr[i+1]){                System.out.println("數組不是有序");                return;            }        }        System.out.println("數組有序");    }    /**     * 複製數組     * @param arr     * @return     */    public static int[] copyArray(int[] arr){        int[] arrs = new int[arr.length];        for (int i = 0;i<arrs.length;i++){            arrs[i] = arr[i];        }        return arrs;    }}

 

排序演算法工具類

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.