/** * Crea una riga della tabella sull'output out, per sequenze di genere kind, eseguendo tutti gli * algoritmi algorithms, su un array di lunghezza len */ static void runAllAlgorithms( EnumSet<Algorithm> algorithms, SequenceKind kind, PrintWriter out, int len) { int maxValue = (kind == SequenceKind.REPEATED_VALUES) ? len / 3 : 9 * len / 10; int[] array = naturalRandomArray(len, maxValue); if (kind == SequenceKind.ALMOST_SORTED) { Arrays.sort(array); swap(array, len / 3, 2 * len / 3); } out.printf("%6d;", len); System.out.println(len); for (Algorithm algo : algorithms) { System.out.println(algo.toString()); int[] arrayCopy = Arrays.copyOf(array, array.length); double time = executionTime(algo, arrayCopy); out.printf("%9.2f;", time); } out.println(); System.out.println(); }