对数器(如何检验算法是否正确)
1.痛点
平常写好算法只能一句一句的去读,人工检验这个算法是否正常,效率太低,如果有能够自动帮忙校对算法正确性的方法该多好?
2.解决
我们可以自己手动的去设置一个检验算法正确性的对数器,对数器分为三部分
生成指定范围大小的随机数组,拷贝数组,数组的检验,如下,我们在主函数里面进行调用即可。
//随机产生数组public static int []generateRandomArray(int maxSize,int maxValue){Random random=new Random();int size=random.nextInt(maxSize+1);int []arr=new int[size];for (int i = 0; i < arr.length; i++) {arr[i]=random.nextInt(maxValue+1);}return arr;}
//复制数组public static int[] copy(int []arr1){return arr1==null?null:arr1.clone();}//判断是否相等//都为null true 一个null false length不同false 每一位对比public static boolean isEqual(int []arr1,int[]arr2){if (arr1==null&&arr2==null)return true;if (arr1==null||arr2==null)return false;if (arr1.length!=arr2.length)return false;for (int i = 0; i < arr1.length; i++) {if (arr1[i]!=arr2[i])return false;}System.out.println(Arrays.toString(arr1));System.out.println(Arrays.toString(arr2));return true;}