1.要求是这样的:对于一个一维数组,要把数组中的数变成奇数在前偶数在后的形式。
思路:可以按照前后同时开始查找,从前头找第一个偶数 和从后头找第一个奇数 然后交换,重复以上操作。直到low>high
package test6;
public class oddEvenTest {
public static void main(String[] args) {
int a[]={8,7,1,9,2,5,5,19,25,98,100};
sort(a);
}
private static void sort(int[] a) {
int i,tmp,index,low,high;
low=0;
high=a.length-1;
while(low<high){
i=low;
while(a[i]%2!=0){
low++;
i=low;
}
index=i;
i=high;
while(a[i]%2==0){
high--;
i=high;
}
if(low<high){
tmp=a[index];
a[index]=a[i];
a[i]=tmp;
}
}
for(i=0;i<a.length-1;i++){
System.out.println(a[i]);
}
}
}