我该如何实现更好的排序方法?

时间:2014-01-06 15:39:10

标签: sorting structure

我正在尝试使用类似于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;

            }
        }
    }
 }
}

0 个答案:

没有答案