Я сталкивался с этой проблемой много раз в различных ситуациях. Он является общим для всех языков программирования, хотя мне нравится C или Java.
Рассмотрим два массива (или коллекции):
char[] A = {'a', 'b', 'c', 'd'};
char[] B = {'c', 'd', 'e', 'f'};
Как получить общие элементы между двумя массивами как новый массив?
В этом случае пересечение массива A и B будет char[] c = {'c', 'd'}
.
Я хочу избежать повторной итерации одного массива внутри другого массива, который будет увеличьте время выполнения на (длина A раз длины B), что слишком велико в случае огромных массивов.
Есть ли способ сделать один проход в каждом массиве, чтобы получить общие элементы?