#includeusing namespace std;void BubbleSort(int *a,int istart,int len)//冒泡排序{ //a为数组,len为数组长度,对a[istart]~a[len-1]进行排序,小浮大沉 //从后面往前两两比较,小的上浮,直到最顶端a[istart]中存放的是剩余数组中最小的数。 for(int i=len;i>istart+1;i--) { if(a[i-2]>a[i-1]) { int temp=a[i-2]; a[i-2]=a[i-1]; a[i-1]=temp; } } if(istart =j时)结束该轮排序 //4.重复以上步骤 int BaseNum=a[istart]; int i=istart,j=ilast; int k=0; while (1) { while(a[j]>BaseNum && i =j) { a[j]=BaseNum; k=j; break; } while(a[i] =j) { a[j]=BaseNum; k=j; break; } j--; } if(istart