static double CountTimeForOneSort(int[] arrayToSort, Program.SortMethod sortMethod) { long startTime = DateTime.Now.Ticks; sortMethod(arrayToSort, 0, arrayToSort.Length - 1); long endTime = DateTime.Now.Ticks - startTime; return(endTime); }
public static double CountTimeForManySorts(int amountOfArrays, int sizeOfArray, int maxValueOfElement, Program.SortMethod sortMethod) { double time = 0; int[][] arrayOfArrays = new int[amountOfArrays][]; for (int i = 0; i < amountOfArrays; i++) { arrayOfArrays[i] = CreateRandomArray(sizeOfArray, maxValueOfElement); } for (int i = 0; i < amountOfArrays; i++) { time += CountTimeForOneSort((int[])arrayOfArrays[i].Clone(), sortMethod); } time /= amountOfArrays; return(time); }