2010-08-11 8 views
1

스칼라에서 이런 문제가 발생했습니다. 액터의 도움으로 이진 검색을 구현해야합니다. 반복자와 재귀가 필요하지 않습니다. 액터 간의 동시성이 바람직합니다. 물론 그것은 의미가 없지만 문제는 다음과 같습니다. 나는 다른 배우의 작업을 조정하는 배우 코디네이터를 두는 것이 좋을 것이라고 생각합니다. 그래서 입력 데이터는 정렬 된 배열과 검색을위한 키입니다. 출력 - 키의 인덱스입니다. 구현 방법에 대한 아이디어가 있습니까?스칼라에 액터가있는 바이너리 검색 구현?

미리 감사드립니다.

답변

3

알고리즘의 모든 단계에서 마지막 결과가 필요하므로 어떻게 이진 검색에 동시성을 가질 수 있을지 모르겠습니다.

"n-ary"검색을 수행 할 수 있습니다. n 부분으로 배열을 분할하고 모든 액터가 하위 배열의 경계에서 값을 비교하도록합니다. 모두 답을 기다릴 필요조차 없습니다. 다른 비교 결과를 가진 두 액터를 얻 자마자 발견 한 부분 배열에 대해 재귀 적으로 다음 라운드를 시작할 수 있습니다.

관련 문제