C#冒泡排序的实现

来源:互联网 发布:打骚扰电话软件 编辑:程序博客网 时间:2024/05/23 13:22

 冒泡排序算法是我们经常见到的尤其是子一些笔试题中.


传统排序方法

//定义数组 static int[] nums = new int[] { 100, 99, 45, 56, 67, 78, 98, 8, 7, 65, 55, 43, 32, 23, 35, 36, 38, 37, 120, 150, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 30, 32, 31, 29, 28, 26, 27, 25, 22, 24 };        static void Main(string[] args)        {            Console.WriteLine("冒泡排序");            BubblingOne();            Console.ReadKey();        }/// <summary>        /// 冒泡排序,传统数据交换实现        /// </summary>        static void BubblingOne()        {            //定义一个需要排序的数组            //定义一个临时变量用于数据交换            int temp; //临时变量,保存最大值            int i, j; //循环变量            for (i = 0; i < nums.Length - 1; i++)            {                for (j = 0; j < nums.Length - 1 - i; j++)                {                    if (nums[j] < nums[j + 1])                    {                        temp = nums[j];                        nums[j] = nums[j + 1];                        nums[j + 1] = temp;                    }                }            }            foreach (int c in nums) //用foreach输出排序后的数组元素             {                Console.Write(c + "\t");            }        }

linq 排序算法


/// <summary>        /// linq 冒泡排序算法        /// </summary>        static void BubblingTwo()        {                IEnumerable<int> num = from a in nums orderby a descending select a;            foreach (int item in num)            {                Console.Write(item + "\t");            }           }





原创粉丝点击