コード例 #1
0
        static void Main(string[] args)
        {
            int size = 1000;

            int[] array = ArrayGenerator.GenerateRandomArray(size);

            int[] ascendingArray  = ArrayGenerator.GenerateSortedAscendingArray(size);
            int[] descendingArray = ArrayGenerator.GenerateSortedDescendingArray(size);
            int[] vShapedArray    = ArrayGenerator.GenerateVShapeArray(size);
            int[] constantArray   = ArrayGenerator.GenerateConstantArray(size);
            int[] aShapeArray     = ArrayGenerator.GenerateAShapeArray(size);



            Stopwatch sw   = Stopwatch.StartNew();
            int       high = array.Length;

            AdvancedSortingAlgorithm.QuickSort(array, 0, high - 1);
            sw.Stop();
            Console.WriteLine("Time taken random: {0}ms", sw.Elapsed.TotalMilliseconds);

            Stopwatch sw1 = Stopwatch.StartNew();

            AdvancedSortingAlgorithm.QuickSort(descendingArray, 0, high - 1);
            sw1.Stop();
            Console.WriteLine("Time taken desc: {0}ms", sw1.Elapsed.TotalMilliseconds);

            Stopwatch sw2 = Stopwatch.StartNew();

            AdvancedSortingAlgorithm.QuickSort(vShapedArray, 0, high - 1);
            sw2.Stop();
            Console.WriteLine("Time taken V: {0}ms", sw2.Elapsed.TotalMilliseconds);

            Stopwatch sw3 = Stopwatch.StartNew();

            AdvancedSortingAlgorithm.QuickSort(aShapeArray, 0, high - 1);
            sw3.Stop();
            Console.WriteLine("Time taken A: {0}ms", sw3.Elapsed.TotalMilliseconds);

            Stopwatch sw4 = Stopwatch.StartNew();

            AdvancedSortingAlgorithm.QuickSort(constantArray, 0, high - 1);
            sw4.Stop();
            Console.WriteLine("Time taken Const: {0}ms", sw4.Elapsed.TotalMilliseconds);
        }