欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » C# » 正文

热门阅读

C#排序算法之-冒泡排序

创建时间:2011年08月08日 10:43  阅读次数:(6656)
分享到:
冒泡排序,顾名思议,就是将要排序的每个对象比喻成一个气泡,我们都知道轻气泡是不能在重气泡之下。根据此原则,我们从上往下扫描数组,只要发现有违反此原则的重气泡,就使用向下"沉"一格。如此扫描一次,我们都能让所有违反此原则的重气泡中的最重的一个"沉"到它自己应该所在的位置,重复扫描"对象长度-1"次,所有的气泡就会乖乖排到它自己的位置了

示例代码下:
 
public class Program
    {
        private static int[] sortlist = new int[] { 10, 12, 8, 3, 5, 6, 2, 1 };
        static void Main(string[] args)
        {
            sortlist = Sort(sortlist);
            for (int i = 0; i < sortlist.Length; i++)
            {
                Console.WriteLine(sortlist[i].ToString());
            }
            Console.ReadLine();
        }

        public static int[] Sort(int[] _sort)
        {
            int j=1;
            int temp;
            bool istrue = false;  //该值用来判断是否所有的气泡都排到自己应该在的位置,如果它为true,则我们就可以直接返回数组了,以减少扫描次数

            while ((j < _sort.Length) && (!istrue))
            {
                istrue = true;
                for (int i = 0; i < _sort.Length-j; i++)
                {
                    if (_sort[i]  > _sort[i + 1])
                    {
                        istrue = false;
                        temp = _sort[i];
                        _sort[i] = _sort[i + 1];
                        _sort[i + 1] = temp;
                    }
                }
                j++;
            }

            return _sort;
        }
    }
来源:.net学习网
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论1条
  • #1楼  评论人:匿名  评论时间:2015-2-19 20:00:25
  • gfd
发表评论:
留言人:
内  容:
请输入问题 86+45=? 的结果(结果是:131)
结  果: