package com.fishercoder.solutions;

/**
 * 905. Sort Array By Parity
 *
 * Given an array A of non-negative integers, return an array consisting of all the even elements of A, followed by all the odd elements of A.
 *
 * You may return any answer array that satisfies this condition.
 *
 * Example 1:
 *
 * Input: [3,1,2,4]
 * Output: [2,4,3,1]
 * The outputs [4,2,3,1], [2,4,1,3], and [4,2,1,3] would also be accepted.
 *
 * Note:
 *
 * 1 <= A.length <= 5000
 * 0 <= A[i] <= 5000
 * */
public class _905 {
    public static class Solution1 {
        public int[] sortArrayByParity(int[] A) {
            for (int i = 0, j = A.length - 1; i < j; i++) {
                if (A[i] % 2 == 0) {
                    continue;
                } else {
                    while (j > i && A[j] % 2 != 0) {
                        j--;
                    }
                    swap(A, i, j);
                }
            }
            return A;
        }

        private void swap(int[] A, int i, int j) {
            int tmp = A[i];
            A[i] = A[j];
            A[j] = tmp;
        }
    }
}

@@ -33,459 +33,8 @@
 s;%0A%0A
-/**%0A * 905. Sort Array By Parity%0A *%0A * Given an array A of non-negative integers, return an array consisting of all the even elements of A, followed by all the odd elements of A.%0A *%0A * You may return any answer array that satisfies this condition.%0A *%0A * Example 1:%0A *%0A * Input: %5B3,1,2,4%5D%0A * Output: %5B2,4,3,1%5D%0A * The outputs %5B4,2,3,1%5D, %5B2,4,1,3%5D, and %5B4,2,1,3%5D would also be accepted.%0A *%0A * Note:%0A *%0A * 1 %3C= A.length %3C= 5000%0A * 0 %3C= A%5Bi%5D %3C= 5000%0A * */%0A
 publ

refactor 905