冒泡排序法

来源:互联网 发布:app软件开发公司 编辑:程序博客网 时间:2024/05/14 20:36
  
冒泡排序法
 
参加多次笔试,居然有几次都考到了冒泡算法,一次是C#版的填空,一次是Javascript版的全部写出。虽然每次都凭着对冒泡法的理解给弄出来的,但是多多少少与标准模式有点差别,在网上搜了一下关于C#版的冒泡算法,没找到满意的,自己对照算法模式认真写了一个C#版的,已经测试成功。
 
  public void BubbleSort(int[] R)
  {
   int i,j,temp; //交换标志
   bool exchange;
   for(i=0; i   {
   exchange=false; //本趟排序开始前,交换标志应为假
   for(j=R.Length-2; j>=i; j--)
   {
       if(R[j+1]   
{
           temp=R[j+1];
           R[j+1]=R[j];
           R[j]=temp;
           exchange=true; //发生了交换,故将交换标志置为真
       }
   }
   if(!exchange) //本趟排序未发生交换,提前终止算法
   {
       break;
   }
  }