0001 void bubblesort( int A[], int n ) { //起泡排序算法(版本0):0 <= n 0002 while ( n-- ) { //在尚未确认已全局排序之前,逐趟进行扫描交换 0003 for ( int i = 0; i < n; i++ ) { //自左向右逐对检查当前范围A[0, n)内的各相邻元素 0004 if ( A[i] > A[i + 1] ) { //一旦A[i]与A[i+1]逆序,则 0005 swap( A[i], A[i + 1] ); //交换之,并 0006 } 0007 } 0008 } 0009 } //蛮力算法,不能及时提前退出,总是必须做n-1趟扫描交换