51,410
社区成员
发帖
与我相关
我的任务
分享private static int partition(Comparable[] a,int l,int h)
{
int i=l;
int j=h;
int key=l;
while(true)
{
while(less(a[++i],a[key])) if(i==h) break;
while(less(a[key],a[j--])) if(j==l) break;
if(i>=j)
{
exchange(a,key,j);
return j;
}
exchange(a,i,j);
}
}private static int partition(Comparable[] a,int l,int h)
{
int i=l;
int j=h+1;
int key=l;
while(true)
{
while(less(a[++i],a[key])) if(i==h) break;
while(less(a[key],a[--j])) if(j==l) break;
if(i>=j) break;
exchange(a,i,j);
}
exchange(a,key,j);
return j;
}