2013-05-01 4 views
-3

주어진 n 개의 문자열에있는 3 자 패턴의 발생 횟수를 찾는 의사 나누기 및 정복 알고리즘을 의사 코드로 작성하려고합니다. 의사에서이 같은및 정복 알고리즘 - 문자열의 패턴 검색

뭔가 :

패턴이 고정 : XXY

int searchString("CDSXXYZSE") 
    . 
    . 
    search for "XXY" 
    . 
    . 
return (1) 

또는

int searchString("CDSXZXYZSE") 
    . 
    . 
    search for "XXY" 
    . 
    . 
return (0) 

이 시간 내 주셔서 모두 감사합니다!

답변

0

나누기 단계에서 나는 가능한 모든 3 문자 조합 (예 : CDS, DSX, XXY ...)으로 문자열 매개 변수를 나눕니다. 그런 다음 검색된 패턴과 일치하는지 테스트하고 정복 단계에서 일치하는 수를 더합니다.

+0

AXXY 또는 XXYA의 경우는 어떻게됩니까 ?? – user2340989

+0

당신은 입력 문자열을 모든 3 길이 부분 문자열로 나눕니다. 따라서 AXXY는 AXX와 XXY를 가질 것입니다. –

+0

알았어, 고마워! – user2340989