示例#1
0
        public int[] Sort(int[] source)
        {
            if (source.Length == 0)
            {
                return(source);
            }

            var baseElem = source[source.Length / 2];
            var less     = LessThenBase(source, baseElem);
            var more     = MoreThenBase(source, baseElem);
            var newArray = QuickSort.Concatenate(Sort(less), new int[1] {
                baseElem
            }, Sort(more));

            return(newArray);
        }
示例#2
0
        public static void Main(string[] args)
        {
            int[] data = { 3, 44, 38, 5, 47, 15, 36, 26, 27, 2, 46, 4, 19, 50, 48 };
            // int[] data = { 10, 7, 8, 9, 1, 5 };
            // BubbleSort s = new BubbleSort();
            // InsertionSort s = new InsertionSort();
            // SelectionSort s = new SelectionSort();
            // MergeSort s = new MergeSort();
            QuickSort s = new QuickSort();

            int[] result = s.doSort(data);

            for (int i = 0; i < result.Length; i++)
            {
                Console.Write(result[i]);
                Console.Write(" ");
            }
            Console.WriteLine("");
            Console.WriteLine("Inversion index: " + s.inversionCount);
            Console.WriteLine("Loop count: " + s.loopCount);
        }
示例#3
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            int[] testData  = new int[] { 3, 2, 5, 1, 2, 3 };
            int[] testData2 = new int[5] {
                99, 98, 92, 97, 95
            };
            int[] testData3 = new int[6] {
                5, 1, 1, 2, 0, 0
            };



            var bubbleSort = new BubbleSort <int>();

            //Console.WriteLine(ConvertStringArrayToString(testData2));
            //Console.WriteLine("Results:");
            //Console.WriteLine(ConvertStringArrayToString(bubbleSort.Sort(testData2)));

            //Console.WriteLine(ConvertStringArrayToString(testData));
            //Console.WriteLine("Results:");
            //Console.WriteLine(ConvertStringArrayToString(bubbleSort.Sort(testData)));

            var quickSort = new QuickSort <int>();

            Console.WriteLine(ConvertStringArrayToString(testData));
            Console.WriteLine("Results:");
            Console.WriteLine(ConvertStringArrayToString(quickSort.Sort(testData2)));


            Console.WriteLine(ConvertStringArrayToString(testData2));
            Console.WriteLine("Results:");
            Console.WriteLine(ConvertStringArrayToString(quickSort.Sort(testData2)));

            Console.WriteLine(ConvertStringArrayToString(testData3));
            Console.WriteLine("Results:");
            Console.WriteLine(ConvertStringArrayToString(quickSort.Sort(testData3)));
            Console.ReadLine();
        }