**Objective**: Given an array which contains even and odd integers. Write an algorithm to separate even and odd numbers.

**Example**

int[] arrA = {1,2,3,4,6,8,7,12}; Output: [12, 2, 8, 4, 6, 3, 7, 1]

**Approach:** **Swapping Indexes**

- Use two indexes, left and right.
- Put left index at the start of array and right at the end of the array.
- Increment left till odd number is not found.
- Decrement right till even number is not found.
- Swap left and right elements
- Do it till left<right

Time Complexity: O(n)

**Code**:

**Output**:

Rearranging arrays using left and right indexes [12, 2, 8, 4, 6, 3, 7, 1]