参加多次笔试,居然有几次都考到了冒泡算法,一次是C#版的填空,一次是javascript版的全部写出。虽然每次都凭着对冒泡法的理解给弄出来的,但是多多少少与标准模式有点差别,在网上搜了一下关于C#版的冒泡算法,没找到满意的,自己对照算法模式认真写了一个C#版的,已经测试成功。
public void BubbleSort(int[] R) { int i,j,temp; //交换标志 bool exchange; for(i=0; i<R.Length; i++) //最多做R.Length-1趟排序 { exchange=false; //本趟排序开始前,交换标志应为假 for(j=R.Length-2; j>=i; j--) { if(R[j+1]<R[j]) //交换条件 { temp=R[j+1]; R[j+1]=R[j]; R[j]=temp; exchange=true; //发生了交换,故将交换标志置为真 } } if(!exchange) //本趟排序未发生交换,提前终止算法 { break; } } } |
正在阅读:C#版的冒泡排序算法C#版的冒泡排序算法
2005-06-17 10:20
出处:
责任编辑:moningfeng