zoukankan      html  css  js  c++  java
  • 排序算法工具类

    /**
     * 排序算法工具类
     */
    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;
        }
    }
  • 相关阅读:
    .net core 在 Docker 上的部署
    js 运算的内置函数
    vux 项目的构建
    微信小程序开发资料
    HttpClient 调用WebAPI时,传参的三种方式
    jsplumb 中文教程
    MyEclipse最新版-版本更新说明及下载
    如何用VSCode调试Vue.js
    vs2017开发Node.js控制台程序
    Objc的底层并发API
  • 原文地址:https://www.cnblogs.com/lfdestiny/p/9536846.html
Copyright © 2011-2022 走看看