zoukankan      html  css  js  c++  java
  • 对数器

    写完算法需要大量测试,需要生成测试数据和测试自己的算法是否正确,一个对数器至少需要三个功能,1.生成大量测试数据,2.找一个绝对正确的算法,3.测试

    代码如下:

     1 package com.sort.demo;
     2 
     3 import java.lang.reflect.Array;
     4 import java.util.Arrays;
     5 import java.util.Random;
     6 
     7 public class Test {
     8 
     9     /**
    10      *随机数值发生器
    11      * @param size 最大长度
    12      * @param value 最大值
    13      * @return
    14      */
    15     public  static int[] generateRandomArray(int size,int value){
    16         int[] arr=new int[(int)((size+1)*Math.random())];
    17         for (int i=0;i<arr.length;i++){
    18             arr[i]=(int)((int)(value+1)*Math.random()-(int)(value+1)*Math.random());
    19         }
    20         return arr;
    21     }
    22 
    23     /**
    24      * 绝对正确的方法
    25      * @param arr
    26      */
    27     public static void rightMethod(int[] arr){
    28         Arrays.sort(arr);
    29     }
    30 
    31     public static int[] copyArr(int[] arr){
    32         int[] arr1=new int[arr.length];
    33         for(int i=0;i<arr.length;i++){
    34             arr1[i]=arr[i];
    35         }
    36         return arr1;
    37     }
    38 
    39     public static void test(Sort sort){
    40         int test=500000;
    41         int size=10;
    42         int value=100;
    43         for (int i=0;i<test;i++){
    44             int[] arr1 = generateRandomArray(size, value);
    45             int[] arr2=copyArr(arr1);
    46             int[] arr3=copyArr(arr1);
    47             sort.sort(arr2);
    48             rightMethod(arr3);
    49             for(int j=0;j<arr2.length;j++){
    50                 if (arr2[j]!=arr3[j]){
    51                     for(int k=0;k<arr1.length;k++){
    52                         System.out.print(arr1[k]+"	");
    53                         if (k==arr1.length-1){
    54                             System.out.println();
    55                         }
    56                     }
    57                    break;
    58                 }
    59             }
    60         }
    61 
    62     }
    63 
    64 }
    对数器
  • 相关阅读:
    基于CNN的图像检测算法
    深度学习网络架构(三):VGG
    深度学习网络架构(二):AlexNet
    jupyter notebook问题记录
    JavaScript学习笔记
    spring-boot学习
    项目部署到heroku遇到的问题
    Android开发百度地图应用——实现定位功能
    C9+heroku部署
    C# WebApi定时任务FluentScheduler的使用
  • 原文地址:https://www.cnblogs.com/zqr99/p/11834444.html
Copyright © 2011-2022 走看看