两个很奇怪的问题
查看原帖
两个很奇怪的问题
405747
Botton楼主2021/3/11 21:08
void qsort(int L,int R)
{
   int i,j,tmp;
   i = L;
   j = R;
   tmp = (L+R)/2;
   while(i<=j)
   {
       while(array[i]<array[tmp])
       {
           i++;
       }
       while(array[j]>array[tmp])
       {
           j--;
       }
       if(i<=j)
       {
           swap(array[i],array[j]);
           i++;
           j--;
       }
   }
    if(L<j)
    {
       qsort(L,j);
    }
    if(R>i)
    {
       qsort(i,R);
    }
}

这个代码前3个点WA 但是只要把tmp = (L+R)/2;这句改成 tmp = array[(L+R)/2] 然后把后面的array[tmp]改成tmp就能AC了 感觉没有什么区别啊

还有就是下载第一个测试点的数据在本地测试时 只能读入400多个数据 很奇怪

2021/3/11 21:08
加载中...