private void ParallelQuickSort(IList <int> array, int low, int high) { if (low >= high) { return; } deep++; var pivot = QuickSort.Partition(array, low, high); if (CanUseMultithreading(array, low, high)) { SendToWorker(array, low, pivot - 1); ParallelQuickSort(array, pivot + 1, high); } else { QuickSort.Sort(array, low, pivot - 1); QuickSort.Sort(array, pivot + 1, high); } }
internal void Sort() { QuickSort.Sort(currentArray.List, 0, currentArray.List.Count - 1); }