두 개의 배열 N과 M이 있습니다. N은 일반적으로 M보다 작지만 임의로 크기가 지정됩니다. 가능한 가장 빠른 방법으로 N에있는 요소가 M에도 있는지 알아야합니다.M에 존재하는 N의 원소를 찾기 위해 배열 N과 M을 검색하는 좋은 알고리즘은 무엇입니까?
N은 프로그램의 가능한 인스턴스의 예를 제공하기 위해 N은 크기가 12 단위이고 M은 크기가 1,000 단위 인 배열입니다. 나는 N에있는 어떤 요소가 M에도 존재한다는 것을 알고 싶다. (일치하는 것이 없을 수도있다.) 해결책이 더 병렬적일수록 좋다.
해시 맵을 사용했지만 필자가 원하는만큼 효율적이지 않습니다.
이것을 입력하면 sizeof (N) 개의 독립 스레드에서 M의 이진 검색을 실행하려고 생각했습니다. (CUDA 사용하기) 다른 제안을 환영하지만 어떻게 작동하는지 알 수 있습니다.
세트를 사용해야합니다. – FogleBird