您的位置:首页 > 其它

传入一个数组进行排列,奇数在前升序,偶数在后降序,在程序执行中不能开辟新数组空间

2012-11-15 17:56 756 查看
/**
* 传入一个数组进行排列,奇数在前升序,偶数在后降序,在程序执行中不能开辟新数组空间
* @author Administrator
*
*/
public class ArrSortTow {

int[] arr={9,3,1,4,5,6,7,8,0,16,11};
static ArrSortTow as;

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

as = new ArrSortTow();

for(int i=0;i<as.arr.length;i++){
for(int j=i+1;j<as.arr.length;j++){

if(as.mod(i)&&as.mod(j))
if(!as.compare(i, j))as.sort(i,j);
if(!as.mod(i)&&as.mod(j))as.sort(i,j);
if(!as.mod(i)&&!as.mod(j))
if(as.compare(i, j))as.sort(i,j);

}
}
}

private boolean compare(int i,int j){
if(as.arr[i]>as.arr[j])return false;
else return true;
}

private boolean mod(int i){
if(as.arr[i]%2==0)return false;
else return true;
}

private void sort(int i, int j) {
// TODO Auto-generated method stub
if(i!=j){
as.arr[i]=as.arr[i]+as.arr[j];
as.arr[j]=as.arr[i]-as.arr[j];
as.arr[i]=as.arr[i]-as.arr[j];
}
}

}
面试中的一道题目
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐