Mesclar arrays em ordem

Mescle dois arrays de inteiros e ordene o resultado na mesma direção que o primeiro array. O primeiro array já está em ordem crescente ou decrescente. Mantenha os valores duplicados.

Exemplos

Program.mergeSort(new int[] { 1, 2, 3 }, new int[] { 5, 4, 6 }) ➞ new int[] { 1, 2, 3, 4, 5, 6 }
Program.mergeSort(new int[] { 8, 6, 4, 2 }, new int[] { -2, -6, 0, -4 }) ➞ new int[] { 8, 6, 4, 2, 0, -2, -4, -6 }