/**
* 传入一个数组进行排列,奇数在前升序,偶数在后降序,在程序执行中不能开辟新数组空间
* @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];
}
}
}
面试中的一道题目
传入一个数组进行排列,奇数在前升序,偶数在后降序,在程序执行中不能开辟新数组空间
最新推荐文章于 2023-07-21 06:32:04 发布