冒泡排序

原理

以此比较相邻的两个元素,每次比较完毕最大的一个字跑到本轮的末尾。 
目的:按从小到大排序。 

根据时间复杂度的计算原则,冒泡排序为:O(n^2 )  比较慢

    class 冒泡排序
    {
        public static void BubbleSort<T>(T[] arr) where T : IComparable
        {
            int arrLength = arr.Length;
            for (int i = 0; i < arrLength-1; i++)
            {
                for (int j = 0; j < arrLength -1- i; j++)
                {
                    if (arr[j].CompareTo(arr[j + 1]) > 0)
                    {
                        T temp = arr[j + 1];
                        arr[j + 1] = arr[j];
                        arr[j] = temp;
                    }
                }
                PrintArr<T>(arr);
            }
        }
        public static void PrintArr<T>(T[] arr)
        {
            foreach (var item in arr)
                Console.Write(item + ",");
            Console.WriteLine();
        }
    }

 

posted @ 2014-10-14 14:41  莫欺  阅读(196)  评论(0编辑  收藏  举报