题解 | 调整数组顺序使奇数位于偶数前面(一)

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

https://www.nowcoder.com/practice/ef1f53ef31ca408cada5093c8780f44b

  • 变量i表示待插入位置。
  • j从i开始遍历,当array[j]是奇数,用tmp记录array[j]的值,防止后续移动数组元素后被覆盖。
  • 用k反向遍历j到i位置,将[i,j-1]的数组元素向后移一位,将奇数tmp插入到i的位置,i++。
import java.util.*;
public class Solution {

    public int[] reOrderArray (int[] array) {
        // write code here
        if(array.length < 2){
            return array;
        }
        int i = 0;
        for(int j = i; j < array.length; j++){
            if(array[j] % 2 == 1){
                int tmp = array[j];
                for(int k = j; k > i; k--){
                    array[k] = array[k-1];
                }
                array[i] = tmp;
                i++;
            }
        }
        return array;
    }   
}

算法题汇总 文章被收录于专栏

算法题汇总。

全部评论

相关推荐

不要0offer啊:浙江大学 加大加粗
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务