正在加载图片...
void Bubble Sort(Seqlist r) /采用自下向上扫描,对R做冒泡排序 int 1,3 Boolean exchange;//交换标志 or(=1;i<n;i++){//最多做n-1趟排序 exchange= FALSE;/本趟排序开始前,交换标志应为假 for(=n-1j>≡;j-)/对当前无序区Rn自下向上扫描 i(R+1key<]key){/交换记录 R0=R+1];/R不是哨兵,仅做暂存单元 R[+1]l=Rj]; RGFRIOJ exchange=TRUE;/发生了交换,故将交换标志置为真 i! xchange)//本趟排序未发生交换,提前终止算法 return }/ endfor(外循环) )//BubbleSortvoid BubbleSort(SeqList R) {//采用自下向上扫描,对R做冒泡排序 int i,j; Boolean exchange; //交换标志 for(i=1;i<n;i++){ //最多做n-1趟排序 exchange=FALSE; //本趟排序开始前,交换标志应为假 for(j=n-1;j>=i;j--) //对当前无序区R[i..n]自下向上扫描 if(R[j+1].key<R[j].key) {//交换记录 R[0]=R[j+1]; //R[0]不是哨兵,仅做暂存单元 R[j+1]=R[j]; R[j]=R[0]; exchange=TRUE;//发生了交换,故将交换标志置为真 } if(!exchange) //本趟排序未发生交换,提前终止算法 return; } //endfor(外循环) } //BubbleSort
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有