На сколько критичен сдвиг в массиве для алгоритмов?
Удаление из массива - медленно в общем случае. Если удалять хитро - поменяв элемент с последним и удалить с конца, то будет гораздо быстрее. Но это не во всех алгоритмах возможно.

 Но самое быстрое решение вашей задачи будет положить один массив в хеш таблицу, и при проходе по второму проверять, есть ли текущий элемент в таблице. Для борьбы с повторяющимеся элементами вв таблице по ключу храните счётчик одинаковых элементов и уменьшайте его при нахождении совпадения.
На проблему надо смотреть в комплексе. На самом деле еще важный вопрос - как вы найдете этот элемент в массиве. Это - тоже часть алгоритма.