黑马程序员 C#之冒泡排序

------- Windows Phone 7手机开发.Net培训、期待与您交流! -------

排序是数据处理中的一种很重要也很常用的运算。

排序就是将一组对象按照规定的次序重新排列的过程。排序的方法有很多种,本文以冒泡排序为例

冒泡排序(Bubble Sorting)

1、基本概念

冒泡排序是一种交换排序方法,其过程是让数组中相邻的元素两两比较(第i个和第i+1个比较),经过n(i-1)遍两两比较,数组中的元素能按照我们预期的规律排序。

要从大到小排序,我们进行两两比较的时候用 <

 

冒泡排序过程示例:

原始数据序列    44    35    62    97    83    16     

第一趟排序后    35    44     62    83    16    97  

第二趟排序后    35    44     62    16    83    97  

第三趟排序后    35    44    16     62    83    97   

第四趟排序后    35   16     44     62    83    97    

第五趟排序后    16   35     44     62    83    97  

 

2、C#冒泡排序代码:

   class Program
   {
        static void Main(string[] args)
        {
            //冒泡排序
            int[] arry = { 45, 38, 65, 97, 86, 10, 22, 41 };
            for (int i = 0; i < arry.Length - 1; i++)//外循环 控制比较的趟数
            {
                for (int j = 0; j < arry.Length - 1-i; j++)//内循环控制两两比较的遍数
                {
                    if (arry[j] > arry[j + 1])//若逆序则把 > 改为 < 即可
                    {
                        //根据要求及上面的判断  对操作数进行交换
                        int temp = arry[j];
                     arry[j] = arry[j + 1];
                     arry[j + 1] = temp;
                   }
               }
             }
            for (int i = 0; i < arry.Length; i++)//用一个循环访问排序后的数组里的元素并打印
              {
                Console.WriteLine(arry[i]);
            }
            Console.ReadKey();
        }
   }

该算法的时间复杂度为O(n*n)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值