public void MergeSort_ShouldSucceed() { // Arrange var testArray = new[] { 50, 20, -1, 5, -10, 31 }; var expected = new[] { -10, -1, 5, 20, 31, 50 }; // Act Sorters.MergeSort(testArray, 0, testArray.Length); // Assert Assert.IsTrue(testArray.SequenceEqual(expected)); }
private void btnSort_Click(object sender, EventArgs e) { Sorters sort = new Sorters(); List <int> list = lbNotSorted.Items.ToListOfType <int>(); List <int> ret = new List <int>(); DateTime start = DateTime.Now, stop = DateTime.Now; start = DateTime.Now; switch (comboAlgorithms.SelectedItem.ToString()) { case "Quick Sort": { ret = sort.QuickSort(list, 0, list.Count - 1).ToListOfType <int>(); break; } case "Merge Sort": { ret = sort.MergeSort(list, 0, list.Count - 1).ToListOfType <int>(); break; } case "Heap Sort": { ret = sort.HeapSort(list).ToListOfType <int>(); break; } case "Bubble Sort": { ret = sort.BubbleSort(list).ToListOfType <int>(); break; } } stop = DateTime.Now; lbSorted.Items.Clear(); lbSorted.Items.AddRange(ret.Cast <object>().ToArray()); lblElapsed.Text = String.Format("{0} ticks", (stop - start).Ticks); }