private void StartSort() { if (StacksSorted()) { return; } sorting = true; if (sortCoroutine != null) { StopCoroutine(sortCoroutine); } switch (algorithm) { case Algorithm.SelectionSort: sortCoroutine = StartCoroutine(SelectionSort.Sort(this)); break; case Algorithm.InsertionSort: sortCoroutine = StartCoroutine(InsertionSort.Sort(this)); break; case Algorithm.BubbleSort: sortCoroutine = StartCoroutine(BubbleSort.Sort(this)); break; case Algorithm.QuickSort: sortCoroutine = StartCoroutine(QuickSort.Sort(this)); break; case Algorithm.MergeSort: sortCoroutine = StartCoroutine(MergeSort.Sort(this)); break; case Algorithm.HeapSort: sortCoroutine = StartCoroutine(HeapSort.Sort(this)); break; case Algorithm.RadixSort: sortCoroutine = StartCoroutine(RadixSort.Sort(this)); break; case Algorithm.ShellSort: sortCoroutine = StartCoroutine(ShellSort.Sort(this)); break; } }
private void BtnHeapSort_Click(object sender, EventArgs e) { var heap = new HeapSort <SortedItem>(items); BtnClick(heap); }