LeetCode 第 922 题:按奇偶排序数组 II

1、前言

题目描述

2、思路

两个指针,分为指向奇数位和偶数位,然后申请一个结果数组。遍历原数组,如果当前数是偶数,则放入偶数位置,偶数指针加2;如果当前是奇数,则放入奇数位置,奇数指针加2。

3、代码

class Solution {
    public int[] sortArrayByParityII(int[] nums) {
        if(nums == null || nums.length == 0){
            return nums;
        }
        int n = nums.length;
        int[] res = new int[n];
        int i = 0, j = 1;
        for(int num : nums){
            if(i < n && num % 2 == 0){
                res[i] = num;
                i += 2;
            }else if(j < n && num % 2 == 1){
                res[j] = num;
                j += 2;
            }
        }

        return res;
    }
}

你可能感兴趣的:(LeetCode 第 922 题:按奇偶排序数组 II)