KMP법
KMP법 브루트-포스법에서는 주어진 문자열 가장 앞 부분부터 찾고자하는 문자열을 문자단위로 비교하면서 다를경우 그 전까지 찾았던 정보를 더 이상 사용하지 않고 주어진 문자열에서 위치를 1칸 이동하여 다시 비교를 하면서 문자열 검색을 수행했다. 그렇기에 항상 찾고자하는 문자열 가장 앞 부분부터 비교해야하는 작업을 수행해야하기에 효율적이지 못했다. KMP법에서는 이러한 부분들을 개선하여 비교하는 과정에서 결과를 효율적으로 사용할 수 있는 알고리즘이다. 어떻게 검색결과를 효율적으로 사용하는지 다음을 통해서 확인해나간다. KMP법은 브루트-포스법보다 상대적으로 복잡하고 보이어-무어법보다 성능이 같거나 오히려 떨어져 잘 사용되지 않는 알고리즘이라 한다. 이해를 위해서 원본 문자열을 'text' , 검색할 문자열을..