剑指offer之 奇数偶数数组位置调整且保存顺序不变
public class Solution {
public void reOrderArray(int [] array) {
reOrderCore(array,array.length);
}
private void reOrderCore(int array[],int len){
if(array==null||array.length==0){
return;
}
//用空间换时间
int newArray[]=new int[len];
int index=0;
for(int i=0;i<len;i++){
if((array[i]&1)==1){
newArray[index++]=array[i];
}
}
for(int i=0;i<len;i++){
if((array[i]&1)==0){
newArray[index++]=array[i];
}
}
for(int i=0;i<len;i++){
array[i]=newArray[i];
}
}
}
空间换时间
本文介绍了一种使用额外空间来实现数组中奇数和偶数位置重新排序的方法,同时保持原有顺序不变。通过创建一个新的数组,并分别将原数组中的奇数和偶数按顺序放入新数组,最后将新数组的内容复制回原数组。
2047

被折叠的 条评论
为什么被折叠?



