这段代码为什么没法实现快速排序
int swap(int *a,int *b){
*a^=*b;
*b^=*a;
*a^=*b;
}
int sort(int *a,int m,int n)
{
int i=m,j=n;
int num=a[i];
if((n-m)==1)
return;
while(i<j)
{
while(i<j&&num<a[j])
j--;
swap(&a[i],&a[j]);
while(i<j&&num >a[i])
i++;
swap(&a[i],&a[j]);
}
a[i]=num;
sort(a,m,i-1);
sort(a,i+1,n);
}