2012-04-13 1 views
1

더 큰 2 차원 행렬 안의 2 차원 행렬을 검색하고 싶습니다. 이를 위해 Boyer-Moore 알고리즘의 2d 버전을 발견했습니다. matlab의 행렬 작업은 항상 더 쉽습니다. 그래서 C++ 컴파일러에서 matlab 함수를 호출 할 수 있는지 궁금합니다.C++에서 Matlab 함수로 작업하기 (매트릭스 검색 용)

나는 여기 사람들이 matlab에 그것을 어떻게하는지 안다고 생각한다.
http://www.mathworks.com/matlabcentral/newsreader/view_thread/247971

이 목적으로 존재하는 라이브러리가 있습니까? 적어도 위의 링크에서 제공된 프로그램에서 사용하는 함수가 들어 있습니다.

추신 : 누구든지이 검색 문제에 대한 해결책을 제공 할 수 있다면 알려주세요.

답변

0

에 나는이에 대한 모든 라이브러리 모르겠어요 찾고있는 무엇을, 당신은 그들이 개발 라이브러리를 판매하는 경우 확인하기 위해 MATLAB의 웹 사이트를 확인 운이 더있을 수 있습니다.

이 문제는 개념적으로 문자열에서 하위 문자열을 찾는 것과 매우 비슷합니다. 간단히 검색하면서 this을 찾았습니다. 도움이 될 것이라고 확신합니다.

는 기본 솔루션으로, 하나는 다음과 같이 갈 수 :

당신은 n x m 매트릭스 내부 p x q 행렬을 찾고 싶어요.

for each row (up to row n - p): 
     search each column (up to column m - q) 
     if value in matrix equals first value check the rest of the submatrix 
      if submatrix found, exit or store solution and keep looking for more