void quicksort(int left, int right)
{
int mid = a[(left+right)/2];
int i = left, j = right;
while ( i <= j )
{
while ( a[i] < mid ) i++
while ( a[j] > mid ) j--;
if ( i <= j )
{
swap(a[i],a[j]);
i++;
j--;
}
}
if ( left < j ) quicksort(left,j);
if ( right > i ) quicksort(i,right);
}比较奇怪的是,将mid改成下标之后再a[mid]似乎会产生不同的结果,不知道是什么原因;
版权声明:本文为qq_31916025原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。