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

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

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;
}

}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-10 14:00
林子大了什么鸟都有啊,我觉得我说的已经很客气了,阴阳谁呢
牛客62656195...:应该不是阴阳吧?你第一次注册的时候boss就说你是牛人
点赞 评论 收藏
分享
06-12 16:00
天津大学 Java
牛客30236098...:腾讯坏事做尽,终面挂是最破防的 上次被挂了后我连简历都不刷了
点赞 评论 收藏
分享
酷酷我灵儿帅:这去不去和线不线下面说实话没啥关系
点赞 评论 收藏
分享
昨天 11:05
门头沟学院 运营
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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