示例#1
0
        public static void Show()
        {
            int[] arr = new int[]
            {
                10000, 20000, 30000, 40000, 50000,
                100000, 200000, 500000,
                1000000, 2000000, 5000000, 10000000,
                100000000
            };

            foreach (int i in arr)
            {
                Console.WriteLine("Длина массива - " + i);

                int[] array = IntArrayGenerator.GenerateArray(i);
                Console.WriteLine("быстрая сортировка " + ", время выполнения - " +
                                  ActionTimeMeasurer.Measure(new Action(() =>
                                                                        HoareSorter.Sort(array))));

                array = IntArrayGenerator.GenerateArray(i);
                Console.WriteLine("встроенная сортировка " + ", время выполнения - " +
                                  ActionTimeMeasurer.Measure(new Action(() =>
                                                                        Array.Sort(array))));

                array = IntArrayGenerator.GenerateArray(i);
                Console.WriteLine("сортировка слиянием " + ", время выполнения - " +
                                  ActionTimeMeasurer.Measure(new Action(() =>
                                                                        MergeSorter.Sort(array))));
                GC.Collect();
                Console.WriteLine();
            }

            Console.ReadKey();
        }
示例#2
0
        public void MergeSortTest()
        {
            int[] arr = IntArrayGenerator.GenerateArray(1000);
            MergeSorter.Sort(arr);
            int el = int.MinValue;

            for (int i = 0; i < arr.Length; i++)
            {
                if (el > arr[i])
                {
                    Assert.Fail();
                }
                el = arr[i];
            }
        }
        public void Sort_ReversedArray_Test()
        {
            //Assign
            m_ArrayGenerator = new IntArrayGenerator(100);
            var sortedArray   = m_ArrayGenerator.GetSorted();
            var reversedArray = m_ArrayGenerator.GetReversed();

            //Act
            var selectionSort = new SelectionSort(reversedArray);

            selectionSort.Sort();

            //Assert
            Assert.AreEqual(sortedArray[0], reversedArray[0]);
            Assert.AreEqual(sortedArray[10], reversedArray[10]);
            Assert.AreEqual(sortedArray[40], reversedArray[40]);
            Assert.AreEqual(sortedArray[90], reversedArray[90]);
        }
示例#4
0
        public void Sort_UnsortedArray_Test()
        {
            //Assign
            m_ArrayGenerator = new IntArrayGenerator(100);
            var sortedArray   = m_ArrayGenerator.GetSorted();
            var unsortedArray = m_ArrayGenerator.GetUnsorted();

            //Act
            var insertionSort = new InsertionSort(unsortedArray);

            insertionSort.Sort();

            //Assert
            Assert.AreEqual(sortedArray[0], unsortedArray[0]);
            Assert.AreEqual(sortedArray[10], unsortedArray[10]);
            Assert.AreEqual(sortedArray[40], unsortedArray[40]);
            Assert.AreEqual(sortedArray[90], unsortedArray[90]);
        }
示例#5
0
 public void TestMethod1()
 {
     int[] arr = IntArrayGenerator.GenerateArray(10000);
     Assert.AreEqual(1, 1);
 }