未排序的数组和整数 k,创建一个方法,重新排列数组中的元素,使所有小于或等于 k 的元素排在任何大于 k 的元素之前。
这是我的代码,它不起作用
public class SmallerFirst
{
public int[] sort(int[] a, int k)
{
if(a.length == 1)
{
return a;
}
if(a.length == 0)
{
return a;
}
else
{
int last = (a.length-1);
for(int pos=0; pos<a.length; pos++)
{
for(int x=1;x>0;x++)
{
if(last == 0)
{
break;
}
if(a[pos] > k)
{
swap(a,pos,last); last--; continue;
}
else
{
break;
}
}
}
return a;
}
}
public void swap(int[] a,int p1,int p2)
{
int temp = 0;
temp = a[p2];
a[p2] = a [p1];
a[p1]=temp;
}
}