1. 程式人生 > 其它 >【Leetcode】922. Sort Array By Parity II

【Leetcode】922. Sort Array By Parity II

技術標籤:# 陣列、連結串列與模擬leetcode演算法java

題目地址:

https://leetcode.com/problems/sort-array-by-parity-ii/

給定一個數組 A A A,要求將其重排,使得 A [ i ] A[i] A[i]的奇偶性和 i i i一樣。題目保證答案存在。

兩輪遍歷,第一輪存一下偶數,第二輪存一下奇數。程式碼如下:

public class Solution {
    public int[] sortArrayByParityII(int[] A) {
        int[] res = new int[A.length];
        for
(int i = 0, j = 0; i < A.length; i++) { if (A[i] % 2 == 0) { res[j] = A[i]; j += 2; } } for (int i = 0, j = 1; i < A.length; i++) { if (A[i] % 2 != 0) { res[j] = A[i]; j += 2; }
} return res; } }

時間複雜度 O ( n ) O(n) O(n),空間 O ( 1 ) O(1) O(1)