У меня есть различные методы сортировки, которые сортируют один и тот же 100 000 случайных чисел.Время выполнения для методов сортировки по множеству массивов
Я использую следующий метод, чтобы найти время автономной работы каждого
long insertionStart = System.currentTimeMillis();
arr.Clone(iniArr);
arr.insertionSort();
long insertionFinal = System.currentTimeMillis() - insertionStart;
А следующий за случайное число arrary
int maxSize = 100000; // array size
Sortarr arr, iniArr; // reference to array
arr = new Sortarr(maxSize); // create the array
iniArr = new Sortarr(maxSize);
// insert random numbers
Random generator = new Random();
for (int i = 0; i < maxSize; i++) iniArr.insert(generator.nextInt());
Как я могу изменить это, так что я могу иметь каждый из них сортируют 100 массивов, а не только один, и подсчитывают время каждого массива? Например. Run1 - 23ms; Run2 - 25ms; ... Run100 - 22ms
EDIT: У меня есть один последний предмет. Итак, каждая итерация сортирует массив несколькими способами, скажем, вставкой, слиянием и быстрой сортировкой. Скажем, вставка = 300 мс, слияние = 200 мс и быстрая = 100 мс. Мне нужно, для каждой итерации, найти, какой метод отсортирован быстрее всего.
Я знаю, что это простая вещь типа min/max, которую вы делаете тысячу раз в более низких классах программирования. Было бы проще бросить каждое значение в массив и использовать вызов array.min? (Что бы это на самом деле, новый синтаксис для Java ..)
Введите код, который вы видите на картинке. – AbdullahC
Это общая идея, но если бы я знал, как ее полностью реализовать, я бы не разместил здесь! –