收起
加个 是否交换的标识
// 从前往后冒泡
void sort(int a[],int n)
{
int i,j,t,noswap;
for(i=0;i< n-1; i++)
{
noswap=1; // 是否交换标识,1 没有交换过, 0 交换过
for(j=0;j<n-1-i;j++)
if(a[j+1]<a[j])
{
t=a[j+1];
a[j+1]=a[j];
a[j]=t;
noswap=0;
}
if(noswap) // 没有交换过,则表示已经排序好,直接退出
break;
}
}
报告相同问题?