测试排序算法工具类
为了方便测试排序算法,下面展示了一些工具类,在之后的写的排序算法中会用到这些类。
一、随机数组生成类
package sort.util; import java.util.*; public class RandomArrayGenerator { private static int[] array; //校验number是否在数组中 private static boolean isInArray(int number) { boolean isInArray = false; for(int a : array) { if(a == number) { isInArray = true; } } return isInArray; } //生成长度为length、值域为1 ~ maxElement的随机数组 public static int[] getRandomArray(int maxElement , int length) { array = new int[length]; Random random = new Random(); int index = 0; while( index < length) { int randomNumber = random.nextInt(maxElement) + 1; //random.nextInt()返回0 ~ maxElement之间的数 if(!isInArray(randomNumber)) { //但不包括maxElement array[index] = randomNumber; index ++; } } return array; } }
二、打印数组类
package sort.util; public class DisplayArray { //显示数组中的所有元素 public static void display(int[] array) { for(int a : array) { System.out.print(a + " "); } System.out.println(""); } }
三、排序类接口
package sort.util; public interface ISort { void sort(int[] array); }
四、测试类
package sort.util; public class SortTestHelper { //调用ISort接口的排序方法对array进行排序测试 public static void test(ISort iSort , int[] array) { System.out.print("排序前:"); DisplayArray.display(array); iSort.sort(array); System.out.print("排序后:"); DisplayArray.display(array); } }