我正在尝试使用类似于bubblesort的以下算法对结构数组进行排序。我怎样才能提高效率?
void sort(struct info list[],long int n)
{
struct info t;
long int i,j;
int sorted=0;
for(i=0;(i<n)&&(sorted==0);i++)
{
for(j=0;j<n-1-i;j++)
{
sorted=1;
if(list[j].p>list[j+1].p)
{
t=list[j];
list[j]=list[j+1];
list[j+1]=t;
sorted=0;
}
if(list[j].p==list[j+1].p)
{
if(list[j].a>list[j+1].a)
{
t=list[j];
list[j]=list[j+1];
list[j+1]=t;
sorted=0;
}
}
}
}
}