定义新数组,空间换时间
运行时间:17ms
占用内存:9292k
public class Solution {
public void reOrderArray(int [] array) {
if(array.length==0||array==null){
return;
}
int a[]= new int [array.length];
int j=0;
for(int i=0;i<array.length;i++){
if(array[i]%2!=0){
a[j++]=array[i];
}
}
for(int i=0;i<array.length;i++){
if(array[i]%2==0){
a[j++]=array[i];
}
}
for(int i=0;i<array.length;i++){
array[i]=a[i];
}
}
}
双重循环
运行时间:21ms
占用内存:9360k
public class Solution {
public void reOrderArray(int [] array) {
for(int i=0;i<array.length;i++){
for(int j=array.length-1;j>i;j--){
if(array[j-1]%2==0&&array[j]%2!=0){
int temp=array[j];
array[j]=array[j-1];
array[j-1]=temp;
}
}
}
}
}