整数组顺序使奇数位于偶数前面

调整数组顺序使奇数位于偶数前面

http://www.nowcoder.com/questionTerminal/beb5aa231adc45b2a5dcc5b62c93f593

public class Solution {
public void reOrderArray(int [] array) {
if (array.length<=1){
return;
}
int l=-1;//奇数范围
int i=0;//当前指针
while (i<array.length) {
if(array[i]%2==1){
if(i-l<=2){
swap(array,i++,++l);//间距小于2,直接互换
}else {
for (int j = i-1; j >l ; j--) {
swap(array,j,j+1);//间距大于2,依次互换
}
l++;//换完范围扩1
}

        }else {
            i++;//偶数只增加指针
        }
    }
}
public void swap(int[] arr,int i,int j){
    int tmp=arr[i];
    arr[i]=arr[j];
    arr[j]=tmp;
}

}

全部评论

相关推荐

03-27 01:58
已编辑
西北工业大学 Java
在平静中度过当下:如果这个bg也简历挂的话可能他们现在不缺人了吧,我也是这两天投的,阿里和快手投的岗都是简历秒挂
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务