void BubbleSort(elemtype x[],int n) //时间复杂度为0(n*n);
{
int i,j;
elemtype temp;
for(i=1;i<n;i++)
for(j=0;j<n-i;j++)
{
if(x[j].key>x[j+1].key)
{
temp=x[j];
x[j]=x[j+1];
x[j+1]=temp;
}
}
}
//补充一个改进的冒泡算法:
void BubbleSort(elemtype x[],int n)
{
Int i,j;
BOOL exchange; //记录交换标志
for(i=1;i<n;++i) //最多做n-1趟排序
{
Exchange = false;
For(j=n-1;j>=i;--j)
{
If(x[j]>x[j+1])
{
x[0] = x[j];
X[j] = x[j+1];
X[j+1] = x[0];
Exchange = true; //发生了交换,设置标志为真.
}
}
{
int i,j;
elemtype temp;
for(i=1;i<n;i++)
for(j=0;j<n-i;j++)
{
if(x[j].key>x[j+1].key)
{
temp=x[j];
x[j]=x[j+1];
x[j+1]=temp;
}
}
}
//补充一个改进的冒泡算法:
void BubbleSort(elemtype x[],int n)
{
Int i,j;
BOOL exchange; //记录交换标志
for(i=1;i<n;++i) //最多做n-1趟排序
{
Exchange = false;
For(j=n-1;j>=i;--j)
{
If(x[j]>x[j+1])
{
x[0] = x[j];
X[j] = x[j+1];
X[j+1] = x[0];
Exchange = true; //发生了交换,设置标志为真.
}
}