-
Boyer-Moore-Horspool의 특징
-
Boyer-Moore의 2가지 shift 방법중 bad-character shift 만 이용한다.
- bad-character shift 는 알파벳이 패턴의 길이보다 클 때, 유용하다.
-
- Boyer-Moore-Horspool 의 실행
- Boyer-Moore-Horspool 의 소스
- void HORSPOOL(char *x, int m, char *y, int n) {
int j, bmBc[ASIZE];
char c;
/* Preprocessing */
preBmBc(x, m, bmBc);
/* Searching */
j = 0;
while (j <= n - m) {
c = y[j + m - 1];
if (x[m - 1] == c && memcmp(x, y + j, m - 1) == 0)
OUTPUT(j);
j += bmBc[c];
}
}
'자료구조 & 알고리즘 > 문자열 매칭 알고리즘' 카테고리의 다른 글
[박혜웅] Karp-Rabin (0) | 2010.03.27 |
---|---|
[박혜웅] Brute Force(BF) (0) | 2010.03.27 |
[박혜웅] Boyer-Moore (0) | 2010.03.27 |
[박혜웅] 문자열 매칭 알고리즘(string matching algorithm)의 종류 (0) | 2010.03.27 |
[박혜웅] 연속된 부분 문자열 (sistring) (0) | 2010.03.27 |