보이어 무어 관련 질문드립니다
2013-07-31
|
by woon419
2316
p455에서 이동테이블 만드는것 관련해서 질문이 생겨서요 (4쇄판)
문자열
0 1 2 3 4 5 6
A A B A B A
접미부 BA라고 볼때
BA를 경계로 다른 접미부는 BABA인데, 불행히도 BABA는 왼쪽 방향으로 확장이 가능합니다
BABA에서 왼쪽으로 한칸 더 이동하면 ABABA가 나옵니다
이문장의 의미를 정확히 잘 모르겠습니다. 확장이 가능하다는 표현이
BA 에서 BABA로 가는것을 의미한다고 생각했는데
책에서는 BABA 가 한칸 이동하여 ABABA가 나온다고 써있더군요
(추가로 ABABA와 ABA는 왼쪽으로 확장할수 없다 써있는데 이유도 부탁드립니다.)
또한
ABABA는 BA를 왼쪽으로 한칸 확장한 ABA가 경계이기 떄문이다.
이부분도 궁금합니다.
ABA가 어떻게 경계가 되는지 궁금합니다.
제 생각으론 A/BAB/A가 되어 앞의A와 뒤의A가 경계가 되는게 아닌가 싶습니다.
마지막으로
길이가 원래 문자열 길이의 1/2보다 크기 때문에 경계가 될수 없습니다
이부분도 이해가 안갑니다.
P454에서 이미 ABABA를 사용하여 테이블 5에 이동거리 4를 써 넣었는데 말입니다.
설명에서는 BABA, ABABA, AABABA를 원래 문자열의 길이의 1/2보다 크다고 경계가 될수 없고
그래서 이동거리는 0으로 채운다?.
끝까지 읽어주셔서 감사합니다.