/** * @param numTries number of tries * @param maxArrLen maximum length of array size */ private static void testBlockyTandemMergeSort(int numTries, int maxArrLen) { for (int arrLen = 0; arrLen <= maxArrLen; arrLen++) { for (int blkSize = 1; blkSize <= arrLen + 100; blkSize++) { for (int tryno = 1; tryno <= numTries; tryno++) { double[] arr = makeMergeTestInput(arrLen, blkSize); long[] brr = makeTheTandemArray(arr); assertMergeTestPrecondition(arr, brr, arrLen, blkSize); Util.blockyTandemMergeSort(arr, brr, arrLen, blkSize); assertMergeTestPostcondition(arr, brr, arrLen); } } } // System.out.printf ("Passed: testBlockyTandemMergeSort\n"); }
@SuppressWarnings("unused") private static void exhaustiveMain(String[] args) { assert (args.length == 1); int numTries = Integer.parseInt(args[0]); System.out.printf("Testing blockyTandemMergeSort\n"); for (int arrLen = 0; true; arrLen++) { for (int blkSize = 1; blkSize <= arrLen + 100; blkSize++) { System.out.printf( "Testing %d times with arrLen = %d and blkSize = %d\n", numTries, arrLen, blkSize); for (int tryno = 1; tryno <= numTries; tryno++) { double[] arr = makeMergeTestInput(arrLen, blkSize); long[] brr = makeTheTandemArray(arr); assertMergeTestPrecondition(arr, brr, arrLen, blkSize); Util.blockyTandemMergeSort(arr, brr, arrLen, blkSize); assertMergeTestPostcondition(arr, brr, arrLen); } } } }