• [练手2]冒泡排序


    目      标      用C#实现冒泡排序    

    性能分析
    若记录序列的初始状态为"正序",则冒泡排序过程只需进行一趟排序,在排序过程中只需进行n-1次比较,且不移动记录;反之,若记录序列的初始状态为"逆序",则需进行n(n-1)/2次比较和记录移动。因此冒泡排序总的时间复杂度为O(n*n)。  

    实现
         1 冒泡排序的基本概念是:依次比较相邻的两个数,将大数放在前面,小数放在后面

         2 代码:

             public void Sort(int [] intArray)
            {
                int intTemp;
                bool blnDo = true;//如果已经没有互换动作说明已经排好
                for (int i = 1; i < intArray.Length; i++)//通过i次冒泡
                {
                    if (blnDo)
                    {
                        break;
                    }
                    blnDo = true;
                    for (int j = 0; j < intArray.Length - i; j++)//排序j个元素
                    {
                        if (intArray[j] > intArray[j + 1])
                        {
                            //互换
                            blnDo = false;
                            intTemp = intArray[j];
                            intArray[j] = intArray[j + 1];
                            intArray[j + 1] = intTemp;
                        }
                    }
                }
            }


    代码下载  冒泡排序代码

  • 相关阅读:
    css居中问题(转)
    Request.ServerVariables 各个参数的用法
    html5 画个球碰撞
    递归生成json
    AspNetPager分页结合存储过程的用法
    sql+aspnetpager+查询功能
    求1+2+……+n
    几种排序的比较 bitmapsort,qsort,set
    利用两个栈,反转其中一个栈的元素
    进程间通信(IPC, Inter Process Communication)读书笔记
  • 原文地址:https://www.cnblogs.com/eugenewu0808/p/DO2.html
Copyright © 2020-2023  润新知