1) Неэффективное решение. запустить над одним массивом и вызвать каждый объект containsObject, если нет, добавить элемент, в противном случае взять следующий элемент
2) Более эффективно: сортируйте оба массива, а затем добавляйте их рядом. Сохраните ссылку на последний добавленный объект, а затем сравните следующие компоненты с этим элементом. Если ничего не найдено, вы можете добавить новый «последний» элемент.
3) Удалите все элементы из HashTable, затем возьмите следующие элементы следующего массива и проверьте, можете ли вы найти «равный» объект. В конце перестройте массив из HashTable
4) сбросить все элементы в NSSet и после этого перестроить массив из этого NSSet