/// <summary> /// Сортирует массив из файла /// </summary> /// <param name="FileName">Путь до сортируемого файла</param> /// <returns>Время сортировки</returns> public string SortArray(string FileName) { if (new FileInfo(FileName).Exists) { string Array; MergeSort.ResetCounters(); DatabaseController.CreateTable(); Stopwatch timer = new Stopwatch(); timer.Start(); try { Array = MergeSort.NaturalMergeSort(FileName); } catch { MessageBox.Show("Файл заполнен некорректно!", "Ошибка"); return("00:00:00"); } timer.Stop(); DatabaseController.AddSort("MergeSort", timer.Elapsed.ToString(), MergeSort.GetCompareCount(), MergeSort.GetSwapCount(), Array); MessageBox.Show("Сортировка выполнена!", "Сортировка"); return(timer.Elapsed.ToString()); } else { MessageBox.Show("Некорректный путь!", "Ошибка"); } return("00:00:00"); }
public string SortArray(DataGridView dgvArray, DataGridView dgvSortedArray, string btnSort) { Sort.ResetCounters(); int[] Array = GetArray(dgvArray); DatabaseController.CreateTable(); Stopwatch timer = new Stopwatch(); timer.Start(); CallSort(Array, btnSort); timer.Stop(); SetSortedArray(dgvSortedArray, Array); DatabaseController.SetIteration(Array); DatabaseController.AddSort(btnSort.Substring(3), timer.Elapsed.ToString(), Sort.GetCompareCount(), Sort.GetSwapCount(), Array); return(timer.Elapsed.ToString()); }
/// <summary> /// Заполняет файл случайными числами и сортирует их /// </summary> /// <param name="N">колличество случайных чисел</param> /// <returns>Время сортировки</returns> public string SortRandomArray(int N) { string FileName = "Array.txt"; StreamWriter SW = new StreamWriter(FileName); Random rand = new Random(); for (int i = 0; i < N; i++) { SW.WriteLine(rand.Next(0, 100)); } SW.Close(); string Array; MergeSort.ResetCounters(); DatabaseController.CreateTable(); Stopwatch timer = new Stopwatch(); timer.Start(); Array = MergeSort.NaturalMergeSort(FileName); timer.Stop(); DatabaseController.AddSort("MergeSort", timer.Elapsed.ToString(), MergeSort.GetCompareCount(), MergeSort.GetSwapCount(), Array); MessageBox.Show("Файл Array.txt заполнен " + N + " случайными числами и успешно отсортирован!", "Сортировка"); return(timer.Elapsed.ToString()); }