return evenTemp + oddTemp
делает то, что вы хотите
Изменяемые массивы могут быть отсортированы на месте, например, для вашего примера вы можете сделать
var a = [0, 3, 1, 2, 4, 5, 6, 6, 7, 7, 8,9,10,10,11,11,11,11,12]
a.sort { $1 % 2 > $0 % 2 }
print(a) // [0, 2, 4, 6, 6, 8, 10, 10, 12, 3, 1, 5, 7, 7, 9, 11, 11, 11, 11]